1、项目开发过程注意事项项目开发流程及注意事项一、开发环境(1)开发工具:eclipse(2)数据库:Oracle(3)导入代码格式化模板 1. java代码格式化模板导入java_formatter.xmlWindowPreferencesJavaCode StyleFormatterImport Profile 2. javascript代码格式化模板 导入javascript_formatter.xmlWindowPreferencesJavaScriptCode StyleFormatterImport Profile二、开发流程及注意事项(1)创建数据库1.建立表空间create tab
2、lespace tablespace_nameloggingdatafile D:oracleAdministratororadataorcltablespace_name.dbf size 200mautoextend onnext 10m maxsize unlimitedextent management local;2.建立数据库用户create user user_name identified by user_passworddefault tablespace tablespace_name;grant connect,resource to user_name; grant d
3、ba to user_name;3.为用户分配表空间revoke unlimited tablespace from user_name;alter user user_name quota unlimited on tablespace_name;4.创建项目开发所需表 create table table_name( column_name data_type)创建表也可以使用PL/SQL Developer 工具通过图形界面来创建表.(2)后台代码编写(SpringMVC+Mybatis)1.通过配置文件自动生成domain dao 和数据库映射文件配置marssrcmarsGenera
4、torConfig.xml文件 运行bulid-mybatis.xml文件 自动生成domain文件com.newheyd.practice.domain.Practice.java com.newheyd.practice.domain.PracticeExample.java 自动生成dao文件com.newheyd.practice.dao.PracticeMapper.javaPracticeMapper extends IMapper DAO接口继承IMapper接口 DAO中的接口实现类即可自动被mybatis注册自动生成数据库映射文件config.mapper.practice.
5、PracticeMapper.xmlserviceservice接口package com.newheyd.practice.service;public interface IPracticeService public int insert(Practice practice); public int update(Practice practice); public int delete(PracticeExample practiceExample); public List select(PracticeExample practiceExample); public int cou
6、nt(PracticeExample practiceExample); public Practice selectByPrimaryKey(Long i);./根据项目需求自行添加方法service接口实现类package com.newheyd.practice.service.impl;Servicepublic class PracticeServiceImpl extends BaseService implements IPracticeService Resource private PracticeMapper practiceMapper = null; Override
7、public int insert(Practice practice) return practiceMapper.insert(practice); Override public int update(Practice practice) int result = practiceMapper.updateByPrimaryKeySelective(practice); return result; Override public int delete(PracticeExample practiceExample) int result = practiceMapper.deleteB
8、yExample(practiceExample); return result; Override public List select(PracticeExample PracticeExample) return practiceMapper.selectByExample(PracticeExample); Override public int count(PracticeExample PracticeExample) int result = practiceMapper.countByExample(PracticeExample); return result; Overri
9、de public Practice selectByPrimaryKey(Long id) return practiceMapper.selectByPrimaryKey(id); controllerpackage com.newheyd.practice.controller;ControllerRequestMapping(/practice)public class practiceController extends BaseController Resource private final IPracticeService practiceService = null; Req
10、uestMapping(/list) ResponseBody public Result list(String testName,String testUser, Page page) PracticeExample practiceExample = new PracticeExample(); Criteria c = practiceExample.or(); if (testName != null) & !(.equals(testName) c.andTestNameLike(testName); if (testUser != null) & !(.equals(testUs
11、er) c.andTestUserLike(testUser); practiceExample.setOrderByClause(pra.id desc); practiceExample.setPage(page);/ 将分页类set入查询条件类,若不set则无分页 List list = practiceService.select(practiceExample); /System.out.println(list.size(); return new ListResult(page.getTotalRecord(), list); RequestMapping(/save) Resp
12、onseBody public Result save(RequestBody Practice practice) practice.setTestName(practice.getTestName(); practice.setTestUser(getCurrentUser().getName(); practice.setTestState(practice.getTestName(); practice.setTestDate(new Date(); practiceService.insert(practice); return new OperResult(true, 保存成功!)
13、; RequestMapping(/update) ResponseBody public Result update(RequestBody Practice practice) if (practice.getId() != null) practiceService.update(practice); return new OperResult(true, 更新成功!); RequestMapping(/delete) ResponseBody public Result delete(RequestBody List ids) throws MarsException Practice
14、Example practiceExample = new PracticeExample(); practiceExample.or().andIdIn(ids); practiceService.delete(practiceExample); return new OperResult(true, 删除成功!); 方法介绍list :列表查询,参数:查询条件,page对象save :添加保存,参数:新增的对象update:修改保存,参数:修改的对象delete:删除, 参数:删除的对象ID (3)前台代码编写(ExtJS4)1.modelExt.define(MARS.model.pra
15、ctice.PracticeModel, extend:Ext.data.Model, fields: name : id, type : Long, sortable : true , name : testName, type : string, sortable : true , name : testDate, type : Date, convert : function(value) var d = null; if (value != null) d = new Date(); d.setTime(value); return d; , name : testUser, type
16、 : String, sortable : true , name : testState, type : String, sortable : true )2.storeExt.define(MARS.store.practice.PracticeStore, extend : MARS.store.BaseStore, model : MARS.model.practice.PracticeModel);view添加页面Ext.define(MARS.view.pratice.PracticeAdd, extend : Ext.form.Panel, alias : widget.prac
17、ticeadd, buttonAlign : center, frame : true, defaultType : textfield, items : name : testName, fieldLabel : 测试名称, afterLabelTextTpl : *, allowBlank : false , name : testUser, fieldLabel : 测试用户, afterLabelTextTpl : *, allowBlank : false , name : testState, fieldLabel : 测试状态, afterLabelTextTpl : *, al
18、lowBlank : false , xtype : datefield, name : testDate, fieldLabel : 测试时间, format : Y-m-d, editable : false , buttons : text : 提交, formBind : true, /所有验证都通过后才可点击 disabled : true, action : create , text : 重置, handler : function() this.up(form).getForm().reset(); );编辑页面Ext.define(MARS.view.practice.Pra
19、cticeEdit, extend : Ext.panel.Panel, alias : widget.practiceedit, buttonAlign : center, frame : true, defaultType : textfield, items : xtype : hidden, name : id , name : testName, fieldLabel : 测试名称, afterLabelTextTpl : *, allowBlank : false / 表单项只读 , name : testUser, fieldLabel : 测试用户, afterLabelTex
20、tTpl : *, allowBlank : false , name : testState, fieldLabel : 测试状态, afterLabelTextTpl : *, allowBlank : false , xtype : datefield, name : testDate, fieldLabel : 测试时间, format : Y-m-d, editable : false , buttons : text : 提交, formBind : true, /所有验证都通过后才可点击 disabled : true, action : update , text : 重置, handler : function() this.up(form).getForm().reset(); );展示页面Ext.define(MARS.view.practice.practiceView, extend : Ext.panel.Panel, alias : widget.practiceview, buttonAlign : center, frame : true, items : xtype : fieldset, title : 基本信息, items : xtype : hidden, name :
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1