# eqpManageSystem **Repository Path**: alzhao/eqpManageSystem ## Basic Information - **Project Name**: eqpManageSystem - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2021-07-13 - **Last Updated**: 2024-11-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # eqpManageSystem ## 项目简介 ## 特色介绍 > 1、分模块构建项目,每个模块职责清晰,功能明确; > > 2、后台管理系统、前台展示系统、静态文件系统分开管理,降低系统的压力,提高系统的可靠性,轻松实现分布式部署; > > 3、项目主要实现了实验室设备的前台展示,后台管理,基本满足了实验室设备管理的需求; > > 4、整个项目给予SSM构建. ## 代码规范 #### 1、命名规范 > > Java类名、局域变量、类变量名、方法名:必须采用标准驼峰命名,类名首字母大写,其余首字母小写,禁止简写。示例:Connection【类名】,connection【变量名】,getConnection【方法名】 > > 包名:由小写字母和点组成,禁止简写。示例:cn.cug.laboratory.controller > > 常量名:大写字母与下划线组成,禁止简写。示例:CONNECTION_TIMEOUT,DEFAULT_SIZE > > 数据库表名,字段名:小写字母加下划线组成。最多长度30个字母,允许适当使用简写。示例:user_ldms,comment_time;字段值采用驼峰命名.如lostDevice > > 除java文件以外的任何文件,包括xml,jsp,properties等:由小写字母和横线组成。示例:user-profile.jsp,article-edit.jsp,application-context.xml,web-config.properties #### 2、Java文件规范 ###### 以下是一个Java文件示例,需要特别强调以下两点,你可以通过设置你的类模板来做到。 > 1、必须写上@author和@since注释。 ```java package cn.codingstar.controller; import lombok.Getter; import lombok.Setter; import java.util.Date; /** * 该类代表一个bean对象. * * @author ShiXing * @since 1.0.0 */ @Getter @Setter public class Bean { private String name; private Date data; } ``` #### 3、JSP文件规范 ###### 以下是一个JSP文件示例,需要特别强调以下两点,你可以通过设置你的类模板来做到。 > 1、必须写上User和Time注释。 ```html <%-- Copyright 2002-2016 the original author or authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --%> <%-- User: ShiXing Time: 16/5/8 18:22 --%> <%@ page contentType="text/html;charset=UTF-8" language="java" %> LDMS

你好,世界!

``` #### 4、注释规范 > 类必须有注释 > > 方法必须有注释 > > 如果该类是一个数据库model,则每个字段必须有注释 ###### 以下为一个简单的示例。 ```java package cn.codingstar.controller; /** * 该类封装了关于string操作的工具方法 * * @author ShiXing * @since 1.0.0 */ public interface StringUtils { /** * 判断一个字符串是否为空 * * @param s 需要检查的字符串对象 * @return 如果s为null或空字符串返回true,否则返回false. */ static boolean isEmpty(String s) { return s == null || s.trim().length() == 0; } } ``` ## 提交代码需要注意的问题 * 请严格按照以上代码规范检查自己提交的代码 * 避免提交不该提交的代码,例如构建生成的文件。 * 类当中切勿带有main函数,如果需要测试,放到test下使用junit进行测试 * 一定类型的类放在一定的包下,具体的规则如下 > 数据库model实体类:放在java文件夹下的model包内 > 数据库的DAO接口类:放在java文件夹下的dao包内 > 数据库的DAO对应Mapper.xml文件,放在java文件夹下的dao.mapper包内, > 业务逻辑service:接口放在java文件夹下的service包内,实现类放在service.impl包内,其中实现类需配置注解@Service,并注意每一个接口有且仅能有一个对应的实现类。如:testService唯一对应实现类testServiceImpl > 控制层Controller:放在java文件夹下的controller包内,每一个子系统分别建立新的子包,如测试用例子系统,应当建立controller.test目录包,并将对应的TestServiceController放置于其中 > 工具类:放在java文件夹下的util包内 > web框架通用的类:放在webapp文件夹内 ## 运行测试demo * 测试demo对应一个完整的从前端到数据库的访问业务流程,其步骤如下: > 1、在index.jsp文件运行的情况下点击Test连接 > 2、前端发出一个url地址请求,被serverlet拦截,并在controller层匹配到对应的TestServiceController这一控制类 > 3、TestServiceController从Spring容器中获取到testServiceImpl这一bean,并调用TestService的接口方法checkAllLostDevice() > 4、testServiceImpl调用DAO层Mybatis框架,通过Mapper.xml文件和Mapper接口类的配合,实现testMapper接口的getAllLostDevice()这一方法,查询得到所有的挂失订单信息 > 5、这一信息封装成model.pojo包内eqpmanagement10_lostdevice这一实体类,并以List结构返还给service层 > 6、service层将得到结果返还给controller层 > 7、controller层将结果封装成json格式的字符串,返还给前端,在网页上显示 * 测试demo需要注意几个点: > 1、应当在获取项目后更新pom.xml文件,使得各个jar包与数据库、spring等版本匹配 > 2、service层中,接口类xxService并不使用@Service注解,而在对应的xxServiceImpl实现类中需加上对应的@Service注解 > 3、controller层中,每个controller需要加上@controller注解,应当注意@RequestMapping和@ResponsBody的使用 > 4、注意mybatis-config.xml文件中的用户登录名和密码、url地址的配置是否正确