SSH整合开发基本步骤
SSH整合开发基本步骤
第一步 创建表结构
根据需求创建表结构如:用户(user)用户名,用户密码。。。。
一般是BI把表都创建好了
第二步 创建实体
根据表结构创建实体类(一般采用注解方式)
@Entity :实体标识
@Table(name = "ia_sys_user") :如果实体名和数据库表名不同时,在这要说明是哪一个表与这个实体相关联
@Cache(usage =CacheConcurrencyStrategy.READ_WRITE) :给实体类配置读写缓存
@Temporal(TemporalType.TIMESTAMP) :时间类型
@Column(name = "user_name", length = 60) :属性名和字段名不同时,要关联属性对应的字段名
一般在属性的get方法上
@ManyToMany(fetch=FetchType.EAGER):多对多的定义
// 中间表定义,表名采用默认命名规则
@JoinTable(name = "ia_sys_user_role",joinColumns = {@JoinColumn(name = "user_id")},
inverseJoinColumns = {@JoinColumn(name= "role_id")}) :中间表的定义,注意表名
@Fetch(FetchMode.SUBSELECT):fetch策略
@OrderBy("id") : 按id排序
@Transient :非持久化的属性
@SuppressWarnings("unchecked") :忽略警告
第三步 创建dao类
@Component /@Repository :组件注入
public class UserDao extends HibernateDao<User,Long> : Long是User的主键
写hql语句等如下
1) public booleanisExist(String userCode){
Stringhql="select count(u) from User u whereu.userCode=?";
Longcount = (Long) createQuery(hql, userCode).uniqueResult();
return count>0;
}
2)public VehicleretrievedDataByDeviceId(String deviceId){
Stringhql="fromVehicle v where v.deviceId=?";
return (Vehicle)createQuery(hql,deviceId).uniqueResult();
}
第四步 创建service类
配置@Service :注入
@Transactional
@Autowired 注入dao类(一般写在set方法上)
写一些逻辑在方法里,调用dao中的方法,处理一些业务,spring是通过属性注入值
@Resource spring是通过名称注入值
如:public booleansave(List<Enterprise>enterprises) {
Enterprise enterprise = null;
try {
if (enterprises.size() == 0) {
return false;
}
for (int i = 0; i < enterprises.size(); i++) {
enterprise= enterprises.get(i);
enterpriseDao.save(enterprise);
}
} catch (Exception e) {
e.printStackTrace();
log.info("保存企业" + enterprise.getName() + "出错");
return false;
}
return true;
}
第五步 创建action类
@Namespace("/account") : 配置命名空间
@Results( { @Result(name = CrudActionSupport.RELOAD, location = "student.action",type = "redirect") }) : 结果返回到那个action中
@Action("student") : 返回的action的名字(其中@Result可以配置多个表示,action按照return 值匹配name值,跳转对应的location地址)
action要继承CrudActionSupport
public classStudentAction extendsCrudActionSupport<Student>
注意要注入service类
如:
public String list() throwsException {
List<PropertyFilter> filters =PropertyFilter.buildFromHttpRequest(Struts2Utils.getRequest());
for(PropertyFilter filter:filters){
if(filter.getPropertyName().equals("studentNo")) {
studentNo=(String) filter.getMatchValue();
}
}
studentService.queryStudent(page, filters);
return SUCCESS;
}
第六步 创建jsp文件
form的创建注意其属性名,样式,还有相应的事件
<form id="studentForm" action="student.action"method="post">
<div id="filter">
工号: <input type="text" name="filter_LIKES_studentNo" value="${studentNo}"size="9"/>
</div>
<input id="student_query"type="button"value="查询"/>
<div id="content">
<table id="contentTable" style="border: 0px;">
<tr>
<td>姓名</td>
<td>成绩</td>
</tr>
<s:iterator value="page.result">
<tr>
<td>${studentName}</td>
<td>${studentScore}</td>
</tr>
</s:iterator>
</table>
</div>
</form>
第七步 调试程序
设置断点调式,用火狐firebug调式jsp文件
SSH整合开发基本步骤相关推荐
- 《人人都玩开心网:Ext JS+Android+SSH整合开发Web与移动SNS》销售排名第4,发篇ExtJS的文章(拖放树结点)庆祝下
<人人都玩开心网:Ext JS+Android+SSH整合开发Web与移动SNS>一书上架短短几天,就进入了互动网计算机类销售总排名第4的好成绩(见下图).现发篇Ext JS的技术文章庆祝 ...
- 框架学习之Spring 第五节 SSH整合开发[Spring2.5+Hibernate3.3+Struts2]
1.首先整合Spring和Hibernate ①引入jar包: hibernate核心安装包下的: hibernate3.jar lib\required\*.jar lib\optional\ehc ...
- SSH整合开发实例:用户管理系统
本文使用的是Struts2+Hibernate3+Spring3框架整合开发的用户管理系统实例. 1.1数据库层实现 建数据库,名为surra: 建数据表,名为user.其中id设置为自增. 1.2H ...
- 人人都玩开心网:Ext JS+Android+SSH整合开发Web与移动SNS
http://book.51cto.com/art/201007/214774.htm http://wenku.baidu.com/view/7e0629a10029bd64783e2cd2.htm ...
- JavaEE框架整合之基于注解的SSH整合
基于注解的SSH整合 开发环节步骤: 实体类 -----> DAO开发 -----> Service开发 -----> Action动作类开发 -----> 配置文件(appl ...
- ssh整合步骤之一(搭建环境)
ssh整合主要可以分为3个步骤:搭建环境.设计架构.实现逻辑 以下是搭建环境的步骤 1.导入jar包 导入ssh基本jar包 2.导入ssh配置文件. 包括(struts.xml hibernate. ...
- Spring自学教程-ssh整合(六)
以下是本人原创,如若转载和使用请注明转载地址.本博客信息切勿用于商业,可以个人使用,若喜欢我的博客,请关注我,谢谢!博客地址 感谢您支持我的博客,我的动力是您的支持和关注!如若转载和使用请注明转载地址 ...
- ssh整合学习(1)
Hibernate框架 1 hibernate核心配置文件 (0)orm思想 -对象关系映射 (1)数据库信息 (2)hibernate信息 (3)映射配置 (4)hibernate核心配置文件 -如 ...
- 使用Maven搭建Struts2+Spring3+Hibernate4的整合开发环境
做了三年多的JavaEE开发了,在平时的JavaEE开发中,为了能够用最快的速度开发项目,一般都会选择使用Struts2,SpringMVC,Spring,Hibernate,MyBatis这些开源框 ...
- canoe开发从入门到精通pdf_阿里技术官手写801页PDF《精通Java Web整合开发》
基础篇 第1~3章为基础篇,重点讲解基于开源架构Java EE应用开发的优势及其开发运行环境的安装配置,同时对JSP技术体系也进行了详细介绍. 基础篇的主要内容包括: Java Web应用开发技术选用 ...
最新文章
- 查找数组里相同元素的个数
- 用JavaScript实现函数重载
- 立即终止Sleep的线程
- hdu1428(记忆化搜索)
- uni-app 更新包提示HTML5+Runtime缺少升级包manifest.json中配置的模块:payment
- Kaggle新手入门
- 小程序通过web-view访问的vue页面中点击无法跳转到小程序相关问题
- 【Task2(2天)】特征工程
- 【R语言实用技巧】类别变量的顺序自定义设置
- Parse分析之 -- Enum.Parse
- 实验九 TCP 协议分析实验
- 【性能测试】JSON工具 对比 fastjson jackson
- opnet物联网仿真-编程集锦
- 单片机广告灯实验总结_单片机流水灯实验总结精选 .doc
- Reducing Participation Costs via Incremental Verification for Ledger Systems学习笔记
- java中nextToken,Java StringTokenizer nextToken()用法及代碼示例
- 网络基础(六)-- 路由器的转发原理,路由表,静态路由及其配置
- java模拟国际象棋游戏_Javafx实现国际象棋游戏
- java字符串确定汉字_java中判断字符串中汉字的个数
- 比游戏还有意思的事情是什么(有自己坚持和梦想的不要看,这篇就是水文)
热门文章
- 容器技术Docker K8s 17 容器服务ACK基础与进阶-容器网络管理
- 机器学习 Machine Learning- 吴恩达Andrew Ng 第1~5课总结
- Python全局解释锁
- linux安装Anaconda
- 计算机windows8黑屏怎么办,详解笔记本电脑出现电源拔出就黑屏的win8处理教程
- php soapclient 超时,PHP SoapClient超时
- qt mdi 子窗口关闭再打开_QT 信号的使用方法
- 服务器上Jupyter notebook环境搭建
- 【概率论】期望、方差、协方差、相关系数、相关与独立、样本估计量、点估计、区间估计
- 特征向量的线性无关性