- 浏览: 124464 次
- 性别:
- 来自: 广州
文章分类
最新评论
-
hanyuanbo:
多谢啦不过你这里有关于字符串的连接机制么?比如:String ...
栈(stack)与堆(heap)区别以及Java的string变量赋值的内部工作机制(精典转载贴) -
only_java:
不错不错,但是好像没有关于字符流的介绍哦?
[转]Java IO 技术之基本流类 ~~~~~~~~ (图+讲解+代码) 好好看 有好处 -
lvwz2008:
比较简单,学习了也受益不少!
栈(stack)与堆(heap)区别以及Java的string变量赋值的内部工作机制(精典转载贴) -
306781704:
看了你写的东西,很不错,基础的很详细
META元素使用详解 -
yihengliu:
总结的完全,有大帮助!
JSP内置对象详解1
Dao层代码编写:
整个项目由 Dao、Services、Web 三层组成, Dao 层主要通过 hibernate 来操作数据库, Service 层主要体现了业务、事务的处理, Web 层由 struts 来控制。整个项目的控制交由 spring 管理。
现在的这个小项目除了完成基本的添删改查,还有一个简单的分页功能。这个分页功能不仅前台分页,而且在后台数据库也进行了分页处理。
首先写好 pojo 的代码:
在 com.game.products.model 中新建 products.hbm.xml 类,代码如下:
注意这里的 ID 不是数据库自动生成的,而是根据需要由程序生成,一般项目中的主键 ID 都是采取这种方式。
xm
- < hibernate-mapping >
- < class name ="com.game.products.model.Products" table ="products" >
- < id name ="gameId" type ="string" >
- < column name ="game_id" length ="5" />
- < generator class ="assigned" />
- </id>
- < property name ="gameNameCn" type ="string" >
- < column name ="game_name_cn" length ="100" />
- < /property >
- < property name ="gameNameEn" type ="string" >
- < column name ="game_name_en" length ="100" />
- < /property >
- < property name ="gameCapacity" type ="string" >
- < column name ="game_capacity" length ="4" />
- < /property >
- < property name ="gameVersion" type ="string" >
- < column name ="game_version" length ="4" />
- < /property >
- < property name ="gameMedia" type ="string" >
- < column name ="game_media" length ="4" />
- < /property >
- < property name ="gameCopyright" type ="string" >
- < column name ="game_copyright" length ="4" />
- < /property >
- < property name ="gamePrice" type ="string" >
- < column name ="game_price" length ="4" />
- < /property >
- < property name ="gameContent" type ="string" >
- < column name ="game_content" length ="100" />
- < /property >
- < /class >
- < /hibernate-mapping >
注意这里的 ID 不是数据库自动生成的,而是根据需要由程序生成,一般项目中的主键 ID 都是采取这种方式。
然后在这个包中再新建 Products 类,代码如下:
- package com.game.products.model;
- public class Products {
- // Fields
- private String gameId; // 编号
- private String gameNameCn; // 中文名称
- private String gameNameEn; // 英文名称
- private String gameCapacity; // 碟数
- private String gameVersion; // 版本
- private String gameMedia; // 介质
- private String gameCopyright; // 版权
- private String gamePrice; // 价格
- private String gameContent; // 攻略
- // Constructors
- public Products() {}
- // Property accessors
- public String getGameCapacity() {
- return gameCapacity;
- }
- public void setGameCapacity(String gameCapacity) {
- this .gameCapacity = gameCapacity;
- }
- public String getGameId() {
- return gameId;
- }
- public void setGameId(String gameId) {
- this .gameId = gameId;
- }
- public String getGameNameCn() {
- return gameNameCn;
- }
- public void setGameNameCn(String gameNameCn) {
- this .gameNameCn = gameNameCn;
- }
- public String getGameNameEn() {
- return gameNameEn;
- }
- public void setGameNameEn(String gameNameEn) {
- this .gameNameEn = gameNameEn;
- }
- public String getGameVersion() {
- return gameVersion;
- }
- public void setGameVersion(String gameVersion) {
- this .gameVersion = gameVersion;
- }
- public String getGameMedia() {
- return gameMedia;
- }
- public void setGameMedia(String gameMedia) {
- this .gameMedia = gameMedia;
- }
- public String getGameCopyright() {
- return gameCopyright;
- }
- public void setGameCopyright(String gameCopyright) {
- this .gameCopyright = gameCopyright;
- }
- public String getGameContent() {
- return gameContent;
- }
- public void setGameContent(String gameContent) {
- this .gameContent = gameContent;
- }
- public String getGamePrice() {
- return gamePrice;
- }
- public void setGamePrice(String gamePrice) {
- this .gamePrice = gamePrice;
- }
- }
需要注意的是,我这里都是采用了 String 类型,因为在项目中传递数据,用 String 类型最为方便,同时也便于代码的编写。只是在前台需要编写验证代码,免得有字符数据插入整数字段而造成数据库异常。
在 com.game.products.dao.iface 包中新建ProductsDao接口。代码如下所示:
- package com.game.products.dao.iface;
- import java.util.List;
- import com.game.products.model.Products;
- public interface ProductsDao {
- List getProducts(); // 获得所有记录
- List getProducts( int pageSize, int startRow); // 获得一段记录
- int getRows(); // 获得总行数
- int getRows(String fieldname,String value); // 获得总行数
- List queryProducts(String fieldname,String value); // 根据条件查询的所有记录
- List queryProducts(String fieldname,String value, int pageSize, int startRow); //根据条件查询的一段记录
Products getProduct(String gameId); // 根据ID获得记录 - String getMaxID(); // 获得最大ID值
- void addProduct(Products pd); // 添加记录
- void updateProductd(Products pd); // 修改记录
- void deleteProduct(Products pd); // 删除记录
- }
在com.game.products.dao.hibernate包中新建继承HibernateDaoSupport的ProductsMapDao类,并实现了ProductsDao接口。 代码如下:
- package com.game.products.dao.hibernate;
- import java.sql.SQLException;
- import java.util.Iterator;
- import java.util.List;
- import org.hibernate.HibernateException;
- import org.hibernate.Query;
- import org.hibernate.Session;
- import org.springframework.orm.hibernate3.HibernateCallback;
- import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
- import com.game.products.dao.iface.ProductsDao;
- import com.game.products.model.Products;
- /** */ /**
- * @author cwf
- *
- */
- public class ProductsMapDao extends HibernateDaoSupport implements ProductsDao {
- public ProductsMapDao() {}
- /** */ /**
- * 函数说明:添加信息
- * 参数说明:对象
- * 返回值:
- */
- public void addProduct(Products pd) {
- this .getHibernateTemplate().save(pd);
- }
- /** */ /**
- * 函数说明:删除信息
- * 参数说明: 对象
- * 返回值:
- */
- public void deleteProduct(Products pd) {
- this .getHibernateTemplate().delete(pd);
- }
- /** */ /**
- * 函数说明:获得所有的信息
- * 参数说明:
- * 返回值:信息的集合
- */
- public List getProducts() {
- String sql = " FROM Products ORDER BY gameNameCn " ;
- return this .getHibernateTemplate().find(sql);
- }
- /** */ /**
- * 函数说明:获得总行数
- * 参数说明:
- * 返回值:总行数
- */
- public int getRows() {
- String sql = " FROM Products ORDER BY gameNameCn " ;
- List list = this .getHibernateTemplate().find(sql);
- return list.size();
- }
发表评论
-
中文乱码问题的解决方法
2007-11-05 22:46 2007tomcat下中文的彻底解决[转] http://blog ... -
候捷谈Java反射机制(6)
2007-11-05 22:44 1414Java 源码改动办法<o:p></o:p ... -
候捷谈Java反射机制(5)
2007-11-05 22:43 1059运行时生成instances<o:p></o ... -
候捷谈Java反射机制(4)
2007-11-05 22:42 1050#001 cc = c.getDeclaredClasses ... -
候捷谈Java反射机制(3)
2007-11-05 22:40 1052Java Reflection API 运用示例<o: ... -
候捷谈Java反射机制(2)
2007-11-05 22:39 980Java classes 组成分析<o:p>&l ... -
候捷谈Java反射机制(1)
2007-11-05 22:28 1574关于本文:<o:p></o:p> 读者 ... -
J2SE API读取Properties文件六种方法
2007-11-05 22:23 9901。使用java.util.Properti ... -
Java 调用存储过程
2007-11-05 22:21 854本文阐述了怎 ... -
JavaMail API细节详细解析大全
2007-11-05 22:16 1071一、JavaMail API简介 JavaMail API ... -
JAVA中正则表达式应用
2007-11-05 22:12 7891.简介: java.util.regex ... -
Java正则表达式详解
2007-11-05 22:08 759如果你曾经用过Perl或任何其他内建正则表达 ... -
JDBC 4.0 API
2007-11-05 21:55 963???? -
JDBC 3.0 API (扩展部分)
2007-11-05 21:54 1164Ø ConnectionPoo ... -
JDBC 2.0 API
2007-11-05 17:19 937JDBC 2.0 API被划 ... -
开发基于JNDI的应用程序3
2007-11-05 16:18 1708JNDI 的DNS 服务提供程序 DNS服务提供程序使得基于 ... -
开发基于JNDI的应用程序2
2007-11-05 16:14 1300示例代码 2 Resolve2.java ... -
开发基于JNDI的应用程序1
2007-11-05 16:06 1019Java命名和目录接口(Java Naming and ... -
struts+spring+hibernate的web应用(4.6)
2007-10-25 11:35 907product_success.jsp页面代码: ... -
struts+spring+hibernate的web应用(4.5)
2007-10-25 11:32 1061addproduct.jsp页面代码: &l ...
相关推荐
12.6 整合Struts、Spring和Hibernate实现用户管理 12.6.1 Struts、Spring和Hibernate的整合方式 12.6.2 编写用户注册画面regedit.jsp 12.6.3 编写用户登录画面login.jsp 12.6.4 编写注册控制器RegeditAction.java ...
struts2.1+spring3.0+hibernate3.3 1 为项目添加struts2的支持 2 为项目添加spring的支持 3 为项目添加hibernate的支持 4 反向表结构
经常很多人都因为jar包引用错了,导致web项目无法正常启动,现在发布一个通用的Struts2.1+Spring2.5+Hibernate3的jar包。随意下载。
精通Java Web整合开发(Jsp+Ajax+Struts+Hibernate)(第2版) Java Structs2.1 Spring3.0 Hibernate3.3 PDF有231M,只能分成4个包上传。 虽然是图片的,但绝对清晰完整,可以放心下载。 前面已经上传过,但第一个包忘...
12.6 整合Struts、Spring和Hibernate实现用户管理 12.6.1 Struts、Spring和Hibernate的整合方式 12.6.2 编写用户注册画面regedit.jsp 12.6.3 编写用户登录画面login.jsp 12.6.4 编写注册控制器RegeditAction.java ...
12.6 整合Struts、Spring和Hibernate实现用户管理 12.6.1 Struts、Spring和Hibernate的整合方式 12.6.2 编写用户注册画面regedit.jsp 12.6.3 编写用户登录画面login.jsp 12.6.4 编写注册控制器RegeditAction.java ...
MyEclipse8.0中自带的struts2版本是2.1.6,spring版本有2.0,2.5的,hibernate版本较多些至3.2,首先选版本就选择最优的,struts2没的选只有2.1.6版的,所以先导入struts2支持,然后是spring选的是2.0,问题就出在...
Java Structs2.1 Spring3.0 Hibernate3.3 CSDN上没看到有人上传过,在别的地方找的,分享一下 part2/4,刚才上传后好像不成功,重新上传一下
详细介绍了java web开发的流行框架SSH的融合过程,文章简单易懂,值得一看
struts 2.1 spring 3.0 hibernate 3.2 网上书店 web java 包括了网上书店所有的功能
Framework:Struts2.1 + Hibernate3.0 + Spring3.0 + JQuery1.11.3 + Bootstrap3.0 + Ajax Database:MySQL5.7 Web Server:Apache Tomcat8.0 主要功能:患者注册登陆、医院管理、科室管理、医生管理、医生排班、患者...
以用户管理为例,结合spring struts hibernate dwr jstl做的实例,struts hibernate dwr 与Spring完全结合,实现用户列表、信息增、删、改、查、维护时用户重名提示等功能,还包括页面自动转码设置(web.xml),...
所以本系统不属于标准的Struts + Spring + Hibernate的标准J2EE应用。具体框架版本:Struts 1.2 + hibernate 2.1。 对于Hibernate的数据库IO操作,将采用DAO模式将操作封装至DAO对象中。而将建立专门的业务层,对WEB...
Java Structs2.1 Spring3.0 Hibernate3.3 CSDN上没看到有人上传过,在别的地方找的,分享一下
Java Structs2.1 Spring3.0 Hibernate3.3 CSDN上没看到有人上传过,在别的地方找的,分享一下 part4/4,刚才上传后好像不成功,重新上传一下
Java Structs2.1 Spring3.0 Hibernate3.3 CSDN上没看到有人上传过,在别的地方找的,分享一下 part3/4,刚才上传后好像不成功,重新上传一下
aop.jar spring-dao.jar spring-hibernate.jar spring-jdbc.jar spring-mock.jar spring-orm.jar spring-remoting.jar spring-support.jar spring-webmvc.jar
《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax+》讲解了JSP/S rvlet技术的基础知识,并提供了一个综合案例展示其具体应用,它们是Java Web服务端技术的基石,也是学习Java Web开发所要必须掌握...
struts2.1+hibernate+spring全部源代码web课设可以参考
《Java Web开发技术大全:JSP+Servlet+Struts+Hibernate+Spring+Ajax+》讲解了JSP/S rvlet技术的基础知识,并提供了一个综合案例展示其具体应用,它们是Java Web服务端技术的基石,也是学习Java Web开发所要必须掌握...