Jeesite的七个文件:

Entity.java
EntityDao.java
EntityService.java
EntityController.java
EntityDao.xml
entityList.jsp
entityForm.jsp

七个文件的作用:

1. Entity.java:
定义使用到的属性名,以及set和get方法来对属性进行设置和获取

public class Entity extends DataEntity<Entity > {private static final long serialVersionUID = 1L;//控制版本一致private String major;           // 专业private String masterName;      // 硕士名//有参和无参构造器public Entity () {super();}public Entity (String id){super(id);}//属性的get和set方法,可以由eclipse的source--Generate Getters and Setters自动生成public String getMajor() {return major;}public void setMajor(String major) {this.major = major;}public String getMasterName() {return masterName;}public void setMasterName(String masterName) {this.masterName = masterName;}
}

2. EntityDao.java:
1. 接口,定义使用到的方法名,包括get/findList/findAllList/update/insert/…等方法名
2. 和EntityDao.xml连接,调用sql语句

public interface DistributeDao extends CrudDao<Distribute> {//其父类定义有相关方法名
}

3. EntityService.java:
用来具体实现EntityDao.java中定义的方法

@Service
@Transactional(readOnly = true)//设置为只读
public class EntityService extends CrudService<EntityDao, Entity> {public Entity get(String id) {return super.get(id);}public List<Entity> findList(Entity entity) {return super.findList(entity);}public Page<Entity> findPage(Page<Entity> page, Entity entity) {return super.findPage(page, entity);}@Transactional(readOnly = false)public void save(Entity entity) {super.save(entity);}@Transactional(readOnly = false)public void delete(Entity entity) {super.delete(entity);}
}

4. EntityController.java:
1. 定义了一些自定义方法,可以被jsp文件调用。
2. 该文件如果需要使用service的方法,可以创建service对象后调用所需要的方法

@Controller
@RequestMapping(value = "${adminPath}/gsmis/distribute")
//请求映射,value为该文件的地址。
public class DistributeController extends BaseController {@Autowired//自动注入private DistributeService distributeService;@ModelAttribute//模型属性:无论调用什么方法都会优先执行该注解的方法public Distribute get(@RequestParam(required=false) String id) {Distribute entity = null;if (StringUtils.isNotBlank(id)){entity = distributeService.get(id);}if (entity == null){entity = new Distribute();}return entity;}//验证是否有值传过来@RequiresPermissions("gsmis:distribute:view")//权限声明:view查看,edit编辑@RequestMapping(value = {"list", ""})//jsp文件执行的方法名public String list(Distribute distribute, HttpServletRequest request, HttpServletResponse response, Model model) {Page<Distribute> page = distributeService.findPage(new Page<Distribute>(request, response), distribute); //考虑分页model.addAttribute("page", page);//返回到jsp的值return "imd/gsmis/distributeList";//返回jsp文件}@RequiresPermissions("gsmis:distribute:view")@RequestMapping(value = "form")public String form(Distribute distribute, Model model) {model.addAttribute("distribute", distribute);return "imd/gsmis/distributeForm";}

5. EntityDao.xml:
调用数据库的·sql语句,负责对数据库的操作

<?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="cn.edu.ccnu.imd.gsmis.dao.DistributeDao"><!--对多个属性批量操作--><sql id="distributeColumns">a.id AS "id",a.major AS "major",a.masterName AS "masterName",a.topic AS "topic",a.studentID AS "studentID",a.keywords AS "keywords",a.status AS "status",a.create_by AS "createBy.id",a.create_date AS "createDate",a.update_by AS "updateBy.id",a.update_date AS "updateDate",a.remarks AS "remarks",a.del_flag AS "delFlag"</sql><sql id="distributeJoins"></sql><select id="get" resultType="Distribute">SELECT <include refid="distributeColumns"/>FROM thesis a<include refid="distributeJoins"/>WHERE a.id = #{id}</select><select id="findList" resultType="Distribute">SELECT <include refid="distributeColumns"/>FROM thesis a<include refid="distributeJoins"/><where>a.del_flag = #{DEL_FLAG_NORMAL}<!--模糊查询--><if test="major != null and major != ''">AND a.major LIKE <if test="dbName == 'oracle'">'%'||#{major}||'%'</if><if test="dbName == 'mssql'">'%'+#{major}+'%'</if><if test="dbName == 'mysql'">concat('%',#{major},'%')</if></if><if test="masterName != null and masterName != ''">AND a.masterName LIKE <if test="dbName == 'oracle'">'%'||#{masterName}||'%'</if><if test="dbName == 'mssql'">'%'+#{masterName}+'%'</if><if test="dbName == 'mysql'">concat('%',#{masterName},'%')</if></if><if test="studentID != null and studentID != ''">AND a.studentID LIKE <if test="dbName == 'oracle'">'%'||#{studentID}||'%'</if><if test="dbName == 'mssql'">'%'+#{studentID}+'%'</if><if test="dbName == 'mysql'">concat('%',#{studentID},'%')</if></if></where><choose><when test="page !=null and page.orderBy != null and page.orderBy != ''">ORDER BY ${page.orderBy}</when><otherwise>ORDER BY a.update_date DESC</otherwise></choose></select>
</mapper>

6. entityList.jsp && entityForm.jsp:
jsp文件作为前台显示的页面,可以根据方法名对controller.java的方法进行调用
list:显示展示页面
form:显示提交页面

<%@ page contentType="text/html;charset=UTF-8" %>
<%@ include file="/WEB-INF/views/include/taglib.jsp"%>
<html>
<head><title>论文分配管理</title><meta name="decorator" content="default"/><script type="text/javascript">$(document).ready(function() {/*  $("#distribute").click(function(){<a href="${ctx}/gsmis/distribute/form?id=${distribute.id}">分配</a>});*/       });function page(n,s){$("#pageNo").val(n);$("#pageSize").val(s);$("#searchForm").submit();return false;}function selectall(){if($('input[name="thesisId"]').get(0).checked){$('input[name="thesisId"]').attr("checked",false); }else{$('input[name="thesisId"]').attr("checked",true); /*$("input[name='documentId']").each(  function(){if($(this).val() != "undefined"){documentIds += $(this).val() + ","}})  */ }}</script>
</head>
<body><ul class="nav nav-tabs"><li class="active"><a href="${ctx}/gsmis/distribute/">论文分配列表</a></li></ul><form:form id="distributeForm" modelAttribute="distribute" action="${ctx}/gsmis/distribute/" method="post" class="breadcrumb form-search"><input id="pageNo" name="pageNo" type="hidden" value="${page.pageNo}"/><input id="pageSize" name="pageSize" type="hidden" value="${page.pageSize}"/><ul class="ul-form">        <li><label>专业:</label><form:input path="major" htmlEscape="false" maxlength="255" class="input-medium"/></li><li><label>姓名:</label><form:input path="masterName" htmlEscape="false" maxlength="255" class="input-medium"/></li><li><label>学号:</label><form:input path="studentID" htmlEscape="false" maxlength="255" class="input-medium"/></li><li class="btns"><input id="btnSubmit" class="btn btn-primary" type="submit" value="查询"/></li><li><a href = "${ctx}/gsmis/distribute/distribute"><input id="distribute" class="btn btn-primary"  type="button" value="一键分配"/></a></li><li class="clearfix"></li></ul></form:form><sys:message content="${message}"/><table id="contentTable" class="table table-striped table-bordered table-condensed"><thead><tr><th style="text-align:center;"><a style="cursor:pointer;" onclick="selectall()">全选</a></th><th>专业</th><th>硕士名</th><th>论文主题</th><th>学号</th><th>关键字</th><th>分配状态</th><shiro:hasPermission name="gsmis:distribute:edit"><th>操作</th></shiro:hasPermission></tr></thead><tbody><c:forEach items="${page.list}" var="distribute"><tr><td style="text-align:center;"><input type="checkbox" name="thesisId" value="${thesis.id}"/></td><td>${distribute.major}</td><td>${distribute.masterName}</td><td>${distribute.topic}</td><td>${distribute.studentID}</td><td>${distribute.keywords}</td><td>${distribute.status}</td><shiro:hasPermission name="gsmis:distribute:edit"><td><a href="${ctx}/gsmis/distribute/form?id=${distribute.id}">分配</a></td></shiro:hasPermission></tr></c:forEach></tbody></table><div class="pagination">${page}</div>
</body>
</html>

Jeesite七个文件作用解释相关推荐

  1. Oracle 11gR2 Patchset 不同文件作用 说明

    在Oracle 10g 版本的Patchset里面,只有一个文件Disk1.  到了Oracle 11.2.0.2和11.2.0.3 的Patchset 大小是剧增.11.2.0.2 和 11.2.0 ...

  2. VC++各种文件作用

    VC++各种文件作用(转) vc所支持的文件类型 DSW:全称是Developer Studio Workspace,最高级别的配置文件,记录了整个工作空间的配置信息,她是一个纯文本的文件,在vc创建 ...

  3. .bashrc 文件作用

    .bashrc 文件作用 根目录下输入ls -a可查看 Linux 系统中很多 shell,包括bash,sh,zsh,dash 和 korn 等,不管哪种 shell 都会有一个 .bashrc 的 ...

  4. SQLSERVER一些公用DLL的作用解释

    SQLSERVER一些公用DLL的作用解释 如果你的SQLSERVER安装在C盘的话,下面的路径就是相应SQLSERVER版本的公用DLL的存放路径 SQL2005 C:\Program Files\ ...

  5. Visual Studio VS工程文件作用的.sdf(.db)和ipch文件夹的处理

    sdf 和 ipch文件与VS提供的智能感知.代码恢复.团队本地仓库功能有关,如果不需要,可以禁止,就不会产生sdf 和 ipch这两个文件了,VS重新加载解决方案时速度超快,设置方法如下:(智能感知 ...

  6. VMware虚拟机文件夹中各文件作用详解

    VMware虚拟机文件夹中各文件作用详解 虚拟机的文件管理由VMware Workstation来执行. 一个虚拟机一般以一系列文件的形式储存在宿主机中, 这些文件一般在由workstation为虚拟 ...

  7. c语言程序头文件作用,C语言头文件

    C语言头文件教程 C 语言的头文件一般都是 .h 做为结尾的. C语言头文件详解 语法 #include 参数 参数 描述 filename 我们需要引入的头文件的名称. 说明 C 语言的头文件一般都 ...

  8. 织梦dedecms dede plus文件作用介绍及安全设置

    一.安装设置 1.默认的后台模块中心有很多模块. 这里除了"友情链接"模块其他都可以删掉.在后台可以先卸载再删除. 2.如果是一开始就不想要的话,安装版plus目录下进行如下操作. ...

  9. Linux就应该这么学第七课-文件的特殊权限

    Linux就应该这么学第七课 文件的特殊权限 1.SUID 将文件执行者临时获取所有者的权限 u+s 2.SGID 让执行者临时拥有属组的权限 g+s 在某个目录中创建的文件自动继承该目录的用户组(只 ...

最新文章

  1. tf.variable和tf.get_Variable以及tf.name_scope和tf.variable_scope的区别
  2. 在Visual Studio中使用Git [关闭]
  3. eclipse代码自动提示
  4. Google产品主管Ken Norton的6条心得:如何招聘一位优秀的产品经理?
  5. 线性代数带参数的线性方程组的求法示例详解
  6. Android:日常学习笔记(8)———探究UI开发(2)
  7. (双指针、二分Binary Search) leetcode 658. Find K closest Elements
  8. 阿里云数据湖解决方案全面满足数据需求,帮助企业释放数据价值
  9. LockDemo 锁对象
  10. java编程窗口在哪里下载_EeJava下载
  11. 吴恩达神经网络和深度学习-学习笔记-41-特征点检测
  12. 了解iphone的特色传感器
  13. linux下批量修改文件名称
  14. BZOJ3503.【CQOI2014】和谐矩阵
  15. freemarker导出word如何换行
  16. SPSS MODELER
  17. JavaScript实现淘宝商品展示(鼠标放在小图片上,上面会出现相应的大图片)
  18. web安全攻防渗透测试笔记
  19. 磁带存储发展趋势浅析
  20. 论文解读:ChangeFormer | A TRANSFORMER-BASED SIAMESE NETWORK FOR CHANGE DETECTION

热门文章

  1. 能够在乱世中_乱世中浮华
  2. 金融(Finance) 精萃
  3. 我常用的4个备份工具
  4. 云计算虚拟化技术与开发-------虚拟化技术应用第二章内容(CPU虚拟机X86要解决的问题、VT-x、VMX、vCPU、EPT、VT-d)
  5. layui图片管理器
  6. Unity飞机大战(发射子弹 让子弹向前飞)
  7. 嘉禾病历系统服务器,嘉和口腔专科电子病历系统
  8. 8个驯服烂代码的原则:bjdp.org第13次编程道场回顾
  9. html5诗歌作业,《品味诗词群》总第七十六期作业
  10. leetcode213强盗抢劫2