整合框架 javaweb开发平台ssmy_m(与代码生成) java struts2 mybatis spring maven jquery
项目设想,在项目开发中,我们的开发人员大多数时间都在重复开发 同样的关键字,同样的语法. 但就在这样的情况下还会经常发生语法的错误,而且每个开发人员的代码风格不同. 其他人员阅读困难.新人的学习成本也会增加.
这些问题会浪费很多时间,也会影响到开发人员的心情,和程序质量. 由这些问题我想的解决方法是 <代码生成工具> . 代码生成可以解决上述问题,加强约定. 对于普通CRUD的开发效率可以提升50%以上,错误率几乎为0 , 是项目系统的开发利器.
代码生成 代码生成工具
自己写的开发平台ssmy_m 与代码生成 ,struts2 mybatis spring maven jQuery jqgrid jqueryui
有问题请留言,或QQ110146324
最下面有生成出来的代码
SVN上的代码基础功能已经都有了.美工没弄,有需要的自己改吧.
在/ssmy_m/src/main/webapp/common/include_com.jsp里引用.否则代码生成会有影响
DEMO:
SSMy主页 | http://liupengyuan.xicp.cn |
ssmy开发框架SSMy | http://liupengyuan.xicp.cn/ssmy_m/ |
ssmy框架的代码生成工具 | http://liupengyuan.xicp.cn/generate_m/ |
generate_m生成的代码示例 | http://download.csdn.net/detail/lpy3654321/8438605 |
- 开发平台
svn: https://m2.svnspot.com/lpy3654321.ssmy_m/
帐号:guest112233
密码:guest112233
也可以到 http://code.svnspot.com 注册
开发平台页面 :右键新窗口打开图片可以放大
最下面有生成出来的代码
- 代码生成
svn: https://m2.svnspot.com/lpy3654321.ssmy_generate_m/
帐号:guest112233
密码:guest112233
也可以到 http://code.svnspot.com 注册
通过过数据库表生成BEAN action servce dao xml js jsp
修改dbConfigs.xml文件,可配置生成的数据库(启动修改也可以,不需要重启)
http://127.0.0.1:8080/generate_m
下载zip后,解压,复制SRC 然后直接粘贴到myeclipse 项目里
- <?xml version=”1.0″ encoding=”UTF-8″?>
- <!– 用于生成数据库的配置文件 –>
- <dbConfigs>
- <dbConfig id=”localMysql”><!– 配置名称 –>
- <url>jdbc:mysql://localhost:3306/ssmy</url><!– url –>
- <username>root</username><!– </username> –>
- <password>root</password><!– password –>
- <driverClass>com.mysql.jdbc.Driver</driverClass><!– driverClass –>
- </dbConfig>
- <dbConfig id=”localOracle”>
- <url>jdbc:oracle:thin:@localhost:1521:orcl</url>
- <username>ssmy</username>
- <password>ssmy</password>
- <driverClass>oracle.jdbc.driver.OracleDriver</driverClass>
- </dbConfig>
- <dbConfig id=”dsd_zjk”>
- <url>jdbc:oracle:thin:@192.168.3.34:1521:orcl</url>
- <username>dsd_zjk</username>
- <password>dsd_zjk</password>
- <driverClass>oracle.jdbc.driver.OracleDriver</driverClass>
- </dbConfig>
- </dbConfigs>
代码生成页面:右键新窗口打开图片可以放大
“项目基本WEB层命名空间” 和 “模块WEB层命名空间” 这两个input会决定Struts2的命名空间和JS的引用路径
- <struts>
- <package name=”com.liupengyuan.framework.pageView.action.PageViewAction” extends=”struts-default” namespace=”/framework/pageView”>
- <action name=”pageView_*”
- class=”pageViewAction”
- method=”{1}”>
- </action>
- <action name=”pageView”>
- <result>/framework/pageView/pageView.jsp</result>
- </action>
- </package>
- </struts>
- 代码目录:
- Zip包目录:
- HTML JS 代码
- <%@ page language=”java” pageEncoding=”UTF-8″%>
- <!DOCTYPE html PUBLIC ”-//W3C//DTD XHTML 1.0 Strict//EN” ”http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd”>
- <html>
- <head>
- <title>记录网络访问量</title>
- <%@ include file=”/common/include_com.jsp”%>
- <meta http-equiv=”Content-Type” content=”text/html; charset=UTF-8″ />
- <script src=”${pageContext.request.contextPath}/jsp/moduleWeb/pageView/js/pageView.js”></script>
- <!–<script src=”js/pageView.js”></script>–>
- </head>
- <body>
- <div class=”ui-layout-north”>
- <div class=”navbar”><font size=”2″ > 当前操作:记录网络访问量</font></div>
- </div>
- <div class=”ui-layout-center”>
- <!– <div class=”title_level1″>查询</div> –>
- <div class=”formarea”>
- <form id=”pageViewSearchForm”>
- <fieldset>
- <legend style=”margin-left: 10px;”>查询</legend>
- <table>
- <tr>
- <td style=”width:150px;” align=”right” ><label for=”requestIp”>用户IP:</label></td>
- <td>
- <div class=”input”>
- <input type=”text” name=”requestIp” size=”40″ />
- </div>
- </td>
- <td style=”width:150px;” align=”right” ><label for=”session”>记录会话ID:</label></td>
- <td>
- <div class=”input”>
- <input type=”text” name=”session” size=”40″ />
- </div>
- </td>
- </tr>
- <tr>
- <td style=”width:150px;” align=”right” ><label for=”module”>访问的模块:</label></td>
- <td>
- <div class=”input”>
- <input type=”text” name=”module” size=”40″ />
- </div>
- </td>
- <td style=”width:150px;” align=”right” ><label for=”visitTime”>访问时间:</label></td>
- <td>
- <div class=”input”>
- <input type=”text” name=”visitTime” class=”Wdate” onClick=”WdatePicker({dateFmt:’yyyy-MM-dd HH:mm:ss’})” size=”40″ />
- </div>
- </td>
- </tr>
- <tr>
- <td style=”width:150px;” align=”right” ><label for=”visitCount”>访问数量:</label></td>
- <td>
- <div class=”input”>
- <input type=”text” name=”visitCount” size=”40″ />
- </div>
- </td>
- </tr>
- </table>
- </fieldset>
- </form>
- <div class=”buttons”>
- <button id=”searchB”>查询</button>
- <button id=”resetB”>清空</button>
- </div>
- </div>
- <div class=”toolbar”>
- <button id=”addB”>增加</button>
- <button id=”editB”>修改</button>
- <button id=”deleteB”>删除</button>
- </div>
- <table id=”pageViewTable”></table>
- </div>
- <div id=”pageViewAddOrEditForm”>
- <div class=”formarea”>
- <form id=”pageViewForm” type=”ajax”>
- <input type=”hidden” id=”id” name=”id”/>
- <table>
- <tr>
- <td style=”width:70px;” align=”right” ><label for=”requestIp”>用户IP:</label></td>
- <td>
- <div class=”input”>
- <input type=”text” id=”requestIp” name=”requestIp” class=”validate[maxSize[50] ] ” size=”40″ />
- </div>
- </td>
- </tr>
- <tr>
- <td style=”width:70px;” align=”right” ><label for=”session”>记录会话ID:</label></td>
- <td>
- <div class=”input”>
- <input type=”text” id=”session” name=”session” class=”validate[maxSize[100] ] ” size=”40″ />
- </div>
- </td>
- </tr>
- <tr>
- <td style=”width:70px;” align=”right” ><label for=”module”>访问的模块:</label></td>
- <td>
- <div class=”input”>
- <input type=”text” id=”module” name=”module” class=”validate[maxSize[100] ] ” size=”40″ />
- </div>
- </td>
- </tr>
- <tr>
- <td style=”width:70px;” align=”right” ><label for=”visitTime”>访问时间:</label></td>
- <td>
- <div class=”input”>
- <input type=”text” id=”visitTime” name=”visitTime” class=”Wdate ” onClick=”WdatePicker({dateFmt:’yyyy-MM-dd HH:mm:ss’})” size=”40″ />
- </div>
- </td>
- </tr>
- <tr>
- <td style=”width:70px;” align=”right” ><label for=”visitCount”>访问数量:</label></td>
- <td>
- <div class=”input”>
- <input type=”text” id=”visitCount” name=”visitCount” class=”validate[maxSize[10] ] ” size=”40″ />
- </div>
- </td>
- </tr>
- </table>
- </form>
- </div>
- </div>
- </body>
- </html>
pageView.js:
- $(function() {
- jQuery(“#pageViewTable”).initGrid({
- url : templateRoot+”/jsp/moduleWeb/pageView/pageView_pagelist.do”,
- height: 480,
- //colNames:[ "id" , "用户IP" , "记录会话ID" , "访问的模块" , "访问时间" , "访问数量" ], //如果colNames存在 则忽略colModel内的colName.
- colModel : [
- { colName : "id", name : "id", hidden : true, id : true, key:true, index : "id", width : 120, align:"cente" } ,
- { colName : "用户IP", name : "requestIp", hidden : false, id : false, key:false, index : "request_ip",width : 120, align:"cente" } ,
- { colName : "记录会话ID",name : "session", hidden : false, id : false, key:false, index : "session", width : 120, align:"cente" } ,
- { colName : "访问的模块",name : "module", hidden : false, id : false, key:false, index : "module", width : 120, align:"cente" } ,
- { colName : "访问时间", name : "visitTime", hidden : false, id : false, key:false, index : "visit_time", width : 120, align:"cente" } ,
- { colName : "访问数量", name : "visitCount",hidden : false, id : false, key:false, index : "visit_count", width : 120, align:"cente" }
- ]
- });
- $(“#pageViewAddOrEditForm”).initDialog({
- width : 580,
- height: 220,
- buttons : { // 为对话框添加按钮
- ”保存” : function() {
- pageViewSave();
- },
- ”取消” : function() {
- $(“#pageViewAddOrEditForm”).dialog(“close”);
- }
- }
- });
- $(“#addB”).click(function() {
- addDialog();
- });
- $(“#editB”).click(function() {
- updateDialog();
- });
- $(“#deleteB”).click(function() {
- deleteByids();
- });
- $(“#searchB”).click(function() {
- search();
- });
- $(“#resetB”).click(function() {
- $(“#pageViewSearchForm”).clearForm();
- });
- function addDialog() {
- $(“#pageViewForm”).clearForm();
- $(“#pageViewAddOrEditForm”)
- .dialog(“option”, ”title”, ”添加记录网络访问量窗口”)
- .dialog(“open”);
- }
- function updateDialog() {
- var pageViewGrid = $(“#pageViewTable”);
- if (!pageViewGrid.ifGridSelectedOne()) {
- alert(“请选择一条记录!”);
- return false;
- }
- $(“#pageViewForm”).clearForm();
- $(“#pageViewAddOrEditForm”)
- .dialog(“option”, ”title”, ”修改记录网络访问量窗口”)
- .dialog(“open”);
- // var rowData = pageViewGrid.getSelectedRows()[0];
- // $(“#pageViewForm”).loadValues(rowData);
- var ids = pageViewGrid.getSelectedIds();
- $(“#pageViewForm”).loadForm(templateRoot + ”/jsp/moduleWeb/pageView/pageView_load.do”,{id : ids[0]});
- }
- function deleteByids() {
- var pageViewGrid = $(“#pageViewTable”);
- if(!pageViewGrid.ifGridSelected()){
- alert(‘请选择要删除的记录!’);
- return false;
- }
- var ids = pageViewGrid.getSelectedIds();
- if(confirm(“确定要删除 ”+ ids.length+” 条数据吗?”)){
- var ids = pageViewGrid.getSelectedIds();
- $.ajax({
- url : templateRoot + ”/jsp/moduleWeb/pageView/pageView_delete.do”,
- data : {“ids” : ids},
- type : ”post”, dataType : ”json”, cache : false, traditional :true,
- success : function(responseText, statusText, xhr, $form) {
- alert(responseText.message || ”保存成功!”);
- if(responseText.success){
- $(“#pageViewTable”).reloadGrid();
- $(“#gridDialog”).dialog(“close”);
- }
- }
- });
- };
- }
- function pageViewSave() {
- $(“#pageViewForm”).submitForm({
- url : templateRoot + ”/jsp/moduleWeb/pageView/pageView_save.do”,
- success:function(responseText, statusText, xhr, $form){
- alert(responseText.message || ”保存成功!”);
- if(responseText.success){
- $(“#pageViewTable”).reloadGrid();
- $(“#pageViewAddOrEditForm”).dialog(“close”);
- }
- },
- failure:function(data, options){
- alert(responseText.message || ”保存失败!”);
- }
- });
- }
- function search(){
- var params = $(“#pageViewSearchForm”).formToObject();
- $(“#pageViewTable”).searchGrid(params);
- }
- function searchByParam(params){
- $(“#pageViewTable”).searchGrid(params);
- }
- });
- Java代码
action:PageViewAction.Java
- package com.liupengyuan.test.modulePage.pageView.action;
- import java.util.List;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.context.annotation.Scope;
- import org.springframework.stereotype.Controller;
- import com.liupengyuan.framework.util.JSONOuter;
- import com.liupengyuan.framework.web.query.IGenericPage;
- import com.liupengyuan.framework.web.struts2.BaseAction;
- import com.liupengyuan.test.modulePage.pageView.model.PageView;
- import com.liupengyuan.test.modulePage.pageView.service.PageViewService;
- /**
- * @ClassName PageViewAction
- * @Description 记录网络访问量Action
- * @struts2配置文件名 struts-test-modulePage-pageView.xml
- * @spring3配置文件名 spring-test-modulePage-pageView.xml
- * @mybatis3配置文件名 mybatis-test-modulePage-pageView.xml
- * @表名 sys_page_view
- * @author generate
- * @date - 2015-02-10 15:33:10
- * @version V1.0
- */
- @SuppressWarnings(“serial”)
- @Controller(“pageViewAction”)
- @Scope(“prototype”)
- public class PageViewAction extends BaseAction<PageView> {
- @Autowired
- private PageViewService pageViewService;
- private PageView pageView;
- private String[] ids;
- /**
- * 新增或者修改记录
- */
- public void save() {
- pageViewService.saveOrUpdate(pageView);
- JSONOuter.writeBeanMsg(getPrintWriter(), pageView,”数据保存成功”);
- }
- /**
- * 加载数据对象
- */
- public void load() {
- PageView pageViewObj = pageViewService.getById( pageView.getId() );
- JSONOuter.writeBeanMsg(getPrintWriter(), pageViewObj);
- }
- /**
- * 分页查询
- */
- public void pagelist() {
- IGenericPage<PageView> iPage = pageViewService.findPageBy(
- pageView,
- this.getPage(),
- this.getRows(),
- this.getSidx(),
- this.getSord());
- JSONOuter.writePage(getPrintWriter(), iPage);
- }
- /**
- * 数据列表
- */
- public void list() {
- List<PageView> list = pageViewService.findListBy(
- pageView, this.getSidx(), this.getSord());
- JSONOuter.writeList(getPrintWriter(), list);
- }
- /**
- * 批量删除记录
- */
- public void delete() {
- String msg = ”";
- if(ids!=null && ids.length>0){
- int s = pageViewService.deleteByIds(ids);
- msg = ”成功删除 ” + s + ” 条记录!!!”;
- }else{
- msg = ”删除失败,请选择要删除的记录!!!”;
- }
- JSONOuter.writeSuccessMsg(getPrintWriter(), msg);
- }
- /**
- * 模型驱动,自动装配页面属性
- */
- public PageView getModel() {
- pageView = new PageView();
- return pageView;
- }
- public void setIds(String[] ids) {
- this.ids = ids;
- }
- }
service接口:PageViewService.java
- package com.liupengyuan.test.modulePage.pageView.service;
- import java.util.List;
- import com.liupengyuan.test.modulePage.pageView.model.PageView;
- import com.liupengyuan.framework.web.query.IGenericPage;
- /**
- * @ClassName PageViewService
- * @Description 记录网络访问量服务接口
- * @struts2 配置文件名 struts-test-modulePage-pageView.xml
- * @spring3 配置文件名 spring-test-modulePage-pageView.xml
- * @mybatis3 配置文件名 mybatis-test-modulePage-pageView.xml
- * @表名 sys_page_view
- * @author generate
- * @date - 2015-02-10 15:33:10
- * @version V1.0
- */
- public interface PageViewService {
- /**
- * 根据通过主键ID获取一个记录网络访问量实例
- * @param id 记录网络访问量ID
- * @return 记录网络访问量实例
- */
- public PageView getById(java.io.Serializable id);
- /**
- * 批量删除
- * @param ids 要删除的记录网络访问量ID集合
- * @return 删除成功的记录生活
- */
- public Integer deleteByIds(java.io.Serializable[] ids);
- public Integer deleteById(java.io.Serializable ids);
- /**
- * 保持一个新增的记录网络访问量实例
- * @param pageView 记录网络访问量
- */
- public void save(PageView pageView);
- /**
- * 保存一个修改的记录网络访问量实例
- * @param pageView 记录网络访问量
- */
- public void update(PageView pageView);
- /**
- * 保存一个新增或修改的记录网络访问量实例
- * @param pageView 记录网络访问量
- */
- public void saveOrUpdate(PageView pageView);
- /**
- * 分页查询
- * @param param 查询参数
- * @param currentPage 当前页码
- * @param rows 每页记录行数
- * @param sort 排序字段
- * @param dir 排序方式、降序(desc)或升序(asc)
- * @return 记录网络访问量实例集合
- */
- public IGenericPage<PageView> findPageBy(
- PageView param,
- int currentPage,
- int rows,
- String sort,
- String dir);
- /**
- * 主要是配合分页查询返回总记录数
- * @param param 主要查询参数封装在param中
- * @return 记录数
- */
- public Integer getCountByParam(PageView param);
- /**
- * 不分页查询
- * @param param 主要查询参数封装在param中
- * @param sort 排序字段
- * @param dir 排序方式、降序(desc)或升序(asc)
- * @return 记录网络访问量实例集合
- */
- public List<PageView> findListBy(PageView param, String sort, String dir);
- }
service实现类:PageViewServiceImpl.java
- package com.liupengyuan.test.modulePage.pageView.service.impl;
- import java.util.List;
- import org.apache.commons.lang.StringUtils;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- import com.liupengyuan.framework.web.query.IGenericPage;
- import com.liupengyuan.test.modulePage.pageView.dao.PageViewDao;
- import com.liupengyuan.test.modulePage.pageView.model.PageView;
- import com.liupengyuan.test.modulePage.pageView.service.PageViewService;
- /**
- * @ClassName PageViewServiceImpl
- * @Description 记录网络访问量服务实现类
- * @struts2 配置文件名 struts-test-modulePage-pageView.xml
- * @spring3 配置文件名 spring-test-modulePage-pageView.xml
- * @mybatis3 配置文件名 mybatis-test-modulePage-pageView.xml
- * @表名 sys_page_view
- * @author generate
- * @date - 2015-02-10 15:33:10
- * @version V1.0
- */
- @Service(“pageViewService”)
- public class PageViewServiceImpl implements PageViewService {
- @Autowired
- private PageViewDao pageViewDao;
- /*
- * (non-Javadoc)
- * @see com.liupengyuan.test.modulePage.pageView.service.PageViewService#getById(java.io.Serializable)
- */
- public PageView getById(java.io.Serializable id) {
- return pageViewDao.getById(id);
- }
- /*
- * (non-Javadoc)
- * @see com.liupengyuan.test.modulePage.pageView.service.PageViewService#deleteByIds(java.io.Serializable[])
- */
- public Integer deleteByIds(java.io.Serializable[] ids) {
- return pageViewDao.deleteByIds(ids);
- }
- /*
- * (non-Javadoc)
- * @see com.liupengyuan.test.modulePage.pageView.service.PageViewService#deleteById(java.io.Serializable)
- */
- public Integer deleteById(java.io.Serializable id) {
- return pageViewDao.deleteById(id);
- }
- /*
- * (non-Javadoc)
- * @see com.liupengyuan.test.modulePage.pageView.service.PageViewService#save(com.liupengyuan.test.modulePage.pageView.model.PageView)
- */
- public void save(PageView ob) {
- pageViewDao.save(ob);
- }
- /*
- * (non-Javadoc)
- * @see com.liupengyuan.test.modulePage.pageView.service.PageViewService#update(com.liupengyuan.test.modulePage.pageView.model.PageView)
- */
- public void update(PageView ob) {
- pageViewDao.update(ob);
- }
- /*
- * (non-Javadoc)
- * @see com.liupengyuan.test.modulePage.pageView.service.PageViewService#saveOrUpdate(com.liupengyuan.test.modulePage.pageView.model.PageView)
- */
- public void saveOrUpdate(PageView ob) {
- if (ob != null) {
- // 如果ID不为空说明是修改的实例,为更新操作
- if (null != ob.getId() && StringUtils.isNotEmpty(String.valueOf(ob.getId()))) {
- pageViewDao.update(ob);
- } else {
- pageViewDao.save(ob);
- }
- }
- }
- /*
- * (non-Javadoc)
- * @see com.liupengyuan.test.modulePage.pageView.service.PageViewService#findPageBy(com.liupengyuan.test.modulePage.pageView.model.PageView, int, int, java.lang.String, java.lang.String)
- */
- public IGenericPage<PageView> findPageBy(
- PageView param,
- int currentPage,
- int rows,
- String sort,
- String dir) {
- return pageViewDao.findPageBy(
- wrapParams(param), currentPage, rows, sort, dir);
- }
- /*
- * (non-Javadoc)
- * @see com.liupengyuan.test.modulePage.pageView.service.PageViewService#getCountByParam(com.liupengyuan.test.modulePage.pageView.model.PageView)
- */
- public Integer getCountByParam(PageView param) {
- return pageViewDao.getCountBy(wrapParams(param));
- }
- /**
- * (non-Javadoc)
- * @see com.liupengyuan.test.modulePage.pageView.service.PageViewService#findListBy(com.liupengyuan.test.modulePage.pageView.PageView, java.lang.String, java.lang.String)
- */
- public List<PageView> findListBy(
- PageView param,
- String sort,
- String dir) {
- return pageViewDao.findListBy(
- wrapParams(param), sort, dir);
- }
- /**
- * 为模糊查询前后加装%%
- */
- private PageView wrapParams(PageView param) {
- if(param != null){
- if(StringUtils.isNotEmpty(param.getRequestIp())){
- param.setRequestIp(“%”+param.getRequestIp()+”%”);
- }
- if(StringUtils.isNotEmpty(param.getSession())){
- param.setSession(“%”+param.getSession()+”%”);
- }
- if(StringUtils.isNotEmpty(param.getModule())){
- param.setModule(“%”+param.getModule()+”%”);
- }
- }
- return param;
- }
- }
DAO接口:PageViewDao.java
- package com.liupengyuan.test.modulePage.pageView.dao;
- import com.liupengyuan.framework.dao.IBaseGenericDAO;
- import com.liupengyuan.test.modulePage.pageView.model.PageView;
- /**
- * @ClassName PageViewDao
- * @Description 记录网络访问量DAO接口
- * @struts2 配置文件名 struts-test-modulePage-pageView.xml
- * @spring3 配置文件名 spring-test-modulePage-pageView.xml
- * @mybatis3 配置文件名 mybatis-test-modulePage-pageView.xml
- * @表名 sys_page_view
- * @author generate
- * @date - 2015-02-10 15:33:10
- * @version V1.0
- */
- public interface PageViewDao extends IBaseGenericDAO<PageView> {
- }
DAO实现类:PageViewDaoImpl.java
- package com.liupengyuan.test.modulePage.pageView.dao.impl;
- import org.springframework.stereotype.Repository;
- import com.liupengyuan.framework.dao.MybatisBaseGenericDAOImpl;
- import com.liupengyuan.framework.util.GeneratorKey;
- import com.liupengyuan.test.modulePage.pageView.dao.PageViewDao;
- import com.liupengyuan.test.modulePage.pageView.model.PageView;
- /**
- * @ClassName PageViewDaoImpl
- * @Description 记录网络访问量DAO实现类
- * @struts2 配置文件名 struts-test-modulePage-pageView.xml
- * @spring3 配置文件名 spring-test-modulePage-pageView.xml
- * @mybatis3 配置文件名 mybatis-test-modulePage-pageView.xml
- * @表名 sys_page_view
- * @author generate
- * @date - 2015-02-10 15:33:10
- * @version V1.0
- */
- @Repository(“pageViewDao”)
- public class PageViewDaoImpl
- extends MybatisBaseGenericDAOImpl<PageView>
- implements PageViewDao {
- /**
- * 生成UUID主键值。
- * @param ob 记录网络访问量
- */
- public void generateId(PageView ob) {
- //id
- if(null == ob.getId() || ob.getId().length() == 0){
- ob.setId(GeneratorKey.genaraId());
- }
- }
- }
model:PageView.java
- package com.liupengyuan.test.modulePage.pageView.model;
- /**
- * @ClassName PageView
- * @Description 记录网络访问量 实体(领域)对象
- * @struts2 配置文件名 struts-test-modulePage-pageView.xml
- * @spring3 配置文件名 spring-test-modulePage-pageView.xml
- * @mybatis3 配置文件名 mybatis-test-modulePage-pageView.xml
- * @表名 sys_page_view
- * @author generate
- * @date - 2015-02-10 15:33:10
- * @version V1.0
- */
- public class PageView implements java.io.Serializable {
- /** id */
- private java.lang.String id;
- /**
- * 获取id
- * @return id
- */
- public java.lang.String getId() {
- return this.id;
- }
- /**
- * 设置id
- */
- public void setId(java.lang.String id){
- this.id = id;
- }
- /** 用户IP */
- private java.lang.String requestIp;
- /**
- * 获取用户IP
- * @return 用户IP
- */
- public java.lang.String getRequestIp() {
- return this.requestIp;
- }
- /**
- * 设置用户IP
- */
- public void setRequestIp(java.lang.String requestIp){
- this.requestIp = requestIp;
- }
- /** 记录会话ID */
- private java.lang.String session;
- /**
- * 获取记录会话ID
- * @return 记录会话ID
- */
- public java.lang.String getSession() {
- return this.session;
- }
- /**
- * 设置记录会话ID
- */
- public void setSession(java.lang.String session){
- this.session = session;
- }
- /** 访问的模块 */
- private java.lang.String module;
- /**
- * 获取访问的模块
- * @return 访问的模块
- */
- public java.lang.String getModule() {
- return this.module;
- }
- /**
- * 设置访问的模块
- */
- public void setModule(java.lang.String module){
- this.module = module;
- }
- /** 访问时间 */
- private java.util.Date visitTime;
- /**
- * 获取访问时间
- * @return 访问时间
- */
- public java.util.Date getVisitTime() {
- return this.visitTime;
- }
- /**
- * 设置访问时间
- */
- public void setVisitTime(java.util.Date visitTime){
- this.visitTime = visitTime;
- }
- /** 访问数量 */
- private java.lang.Integer visitCount;
- /**
- * 获取访问数量
- * @return 访问数量
- */
- public java.lang.Integer getVisitCount() {
- return this.visitCount;
- }
- /**
- * 设置访问数量
- */
- public void setVisitCount(java.lang.Integer visitCount){
- this.visitCount = visitCount;
- }
- }
- XML 配置文件
mybatis文件:mybatis-test-modulePage-pageView.xml
- <?xml version=”1.0″ encoding=”UTF-8″?>
- <!DOCTYPE mapper PUBLIC ”-//mybatis.org//DTD Mapper 3.0//EN” ”http://mybatis.org/dtd/mybatis-3-mapper.dtd”>
- <mapper namespace=”com.liupengyuan.test.modulePage.pageView.model.PageView”>
- <resultMap id=”pageViewResultMap” type=”com.liupengyuan.test.modulePage.pageView.model.PageView”>
- <!– id –>
- <result column=”id” property=”id” jdbcType=”VARCHAR” />
- <!– 用户IP –>
- <result column=”request_ip” property=”requestIp” jdbcType=”VARCHAR” />
- <!– 记录会话ID –>
- <result column=”session” property=”session” jdbcType=”VARCHAR” />
- <!– 访问的模块 –>
- <result column=”module” property=”module” jdbcType=”VARCHAR” />
- <!– 访问时间 –>
- <result column=”visit_time” property=”visitTime” jdbcType=”TIMESTAMP” />
- <!– 访问数量 –>
- <result column=”visit_count” property=”visitCount” jdbcType=”INTEGER” />
- </resultMap>
- <!– 表名 –>
- <sql id=”tableNameSql”>
- sys_page_view
- </sql>
- <!– 用于select查询、insert的公用抽取的列 –>
- <sql id=”commonSelectColumnsPrefix”>
- id ,
- request_ip ,
- session ,
- module ,
- visit_time ,
- visit_count
- </sql>
- <!– 按主键查找条件语句 –>
- <sql id=”conditionOnlyId”>
- id = #{id}
- </sql>
- <sql id=”mainSql”>
- SELECT
- <include refid=”commonSelectColumnsPrefix”/>
- FROM
- <include refid=”tableNameSql”/> p
- </sql>
- <sql id=”varSql”>
- <where>
- <if test=”requestIp!=null and requestIp!=””>and p.request_ip like #{requestIp} </if>
- <if test=”session!=null and session!=””>and p.session like #{session} </if>
- <if test=”module!=null and module!=””>and p.module like #{module} </if>
- </where>
- </sql>
- <select id=”findPageBy” parameterType=”java.util.Map” resultMap=”pageViewResultMap”>
- <include refid=”mainSql”/>
- <include refid=”varSql”/>
- <if test=”SORT != null and SORT != ””>
- order by ${SORT}
- <if test=”DIR != null and DIR != ””>
- ${DIR}
- </if>
- </if>
- </select>
- <select id=”getById” parameterType=”String” resultMap=”pageViewResultMap”>
- <include refid=”mainSql”/>
- where <include refid=”conditionOnlyId”/>
- </select>
- <select id=”getCountBy” parameterType=”java.util.Map” resultType=”INTEGER”>
- SELECT
- COUNT(*) AS C
- FROM
- <include refid=”tableNameSql”/> p
- <include refid=”varSql”/>
- </select>
- <select id=”findListBy” parameterType=”java.util.Map” resultMap=”pageViewResultMap”>
- <include refid=”mainSql”/>
- <include refid=”varSql”/>
- <if test=”SORT != null and SORT != ””>
- order by ${SORT}
- <if test=”DIR != null and DIR != ””>
- ${DIR}
- </if>
- </if>
- </select>
- <insert id=”save” parameterType=”com.liupengyuan.test.modulePage.pageView.model.PageView”>
- insert into
- <include refid=”tableNameSql”/>
- (
- <include refid=”commonSelectColumnsPrefix”/>
- )
- values
- (
- #{id, jdbcType=VARCHAR} ,
- #{requestIp, jdbcType=VARCHAR} ,
- #{session, jdbcType=VARCHAR} ,
- #{module, jdbcType=VARCHAR} ,
- #{visitTime, jdbcType=TIMESTAMP} ,
- #{visitCount, jdbcType=INTEGER}
- )
- </insert>
- <update id=”update” parameterType=”com.liupengyuan.test.modulePage.pageView.model.PageView”>
- update
- <include refid=”tableNameSql”/>
- set
- request_ip = #{requestIp, jdbcType=VARCHAR} ,
- session = #{session, jdbcType=VARCHAR} ,
- module = #{module, jdbcType=VARCHAR} ,
- visit_time = #{visitTime, jdbcType=TIMESTAMP} ,
- visit_count = #{visitCount, jdbcType=INTEGER}
- where <include refid=”conditionOnlyId”/>
- </update>
- <delete id=”deleteByIds” parameterType=”Object[]“>
- delete from <include refid=”tableNameSql”/>
- where id in <foreach index=”index” item=”item” collection=”array” separator=”,” open=”(“ close=”)” >#{item}</foreach>
- </delete>
- <delete id=”deleteById” parameterType=”Object”>
- delete from <include refid=”tableNameSql”/> where <include refid=”conditionOnlyId”/>
- </delete>
- </mapper>
spring配置文件:spring-test-modulePage-pageView.xml
- <?xml version=”1.0″ encoding=”UTF-8″?>
- <beans xmlns=”http://www.springframework.org/schema/beans”
- xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”
- xmlns:aop=”http://www.springframework.org/schema/aop”
- xmlns:tx=”http://www.springframework.org/schema/tx”
- xmlns:context=”http://www.springframework.org/schema/context”
- xsi:schemaLocation=”
- http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
- http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
- http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd
- http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.0.xsd
- http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd”>
- <context:component-scan base-package=”com.liupengyuan.test.modulePage.pageView.*” />
- </beans>
Struts2配置文件:struts-test-modulePage-pageView.xml
- <?xml version=”1.0″ encoding=”UTF-8″ ?>
- <!DOCTYPE struts PUBLIC
- ”-//Apache Software Foundation//DTD Struts Configuration 2.0//EN”
- ”http://struts.apache.org/dtds/struts-2.0.dtd”>
- <struts>
- <package name=”com.liupengyuan.test.modulePage.pageView.action.PageViewAction” extends=”struts-default” namespace=”/jsp/moduleWeb/pageView”>
- <action name=”pageView_*”
- class=”pageViewAction”
- method=”{1}”>
- </action>
- <action name=”pageView”>
- <result>/jsp/moduleWeb/pageView/pageView.jsp</result>
- </action>
- </package>
- </struts>
结束…