请教各位大大 如何把DAO导入到thinkphp 自定义标签签类中 30java2000

Struts+Spring+Hibernate快速入门实例 - 维维软件园
Struts+Spring+Hibernate快速入门实例
来源:本站整理作者:佚名时间: 8:29:00(0)
  本文是开发基于spring的web应用的入门文章,前端采用Struts MVC框架,中间层采用spring,后台采用Hibernate。
本文包含以下内容:
&配置Hibernate和事务
&装载Spring的applicationContext.xml文件
&建立业务层和DAO之间的依赖关系
&将Spring应用到Struts中
  这个例子是建立一个简单的web应用,叫MyUsers,完成用户管理操作,包含简单的数据库增,删,查,该即CRUD(新建,访问,更新,删除)操作。这是一个三层的web应用,通过Action(Struts)访问业务层,业务层访问DAO。图一简要说明了该应用的总体结构。图上的数字说明了流程顺序-从web(UserAction)到中间层(UserManager),再到数据访问层(UserDAO),然后将结果返回。
  Spring层的真正强大在于它的声明型事务处理,帮定和对持久层支持(例如Hiberate和iBATIS)
以下下是完成这个例子的步骤:
1. 安装Eclipse插件
2. 数据库建表
3. 配置Hibernate和Spring
4. 建立Hibernate DAO接口的实现类
5. 运行测试类,测试DAO的CRUD操作
6. 创建一个处理类,声明事务
7. 创建web层的Action和model
8. 运行Action的测试类测试CRUD操作
9. 创建jsp文件通过浏览器进行CRUD操作
10. 通过浏览器校验jsp
安装eclipse插件
1. Hibernate插件/hibernatesync
2. Spring插件http://springframework.sourceforge.net/spring-ide/eclipse/updatesite/
3. MyEclipse插件(破解版)
4. Tomcat插件. tanghan
5. 其他插件包括xml,jsp,
数据库建表
create table app_user(id number not null primary,firstname vchar(32),lastname vchar(32));
  新建一个web project,新建后的目录结构同时包含了新建文件夹page用于放jsp文件,和源文件夹test用于放junit测试文件。同时将用到的包,包括struts,hibernate,spring都导入到lib目录下。
创建持久层O/R mapping
1. 在src/com.jandar.model下用hibernate插件从数据库导出app_user的.hbm.xml文件改名为User.hbm.xml
<?xml version=&1.0&?>
<!DOCTYPE hibernate-mapping PUBLIC
   &-//Hibernate/Hibernate Mapping DTD//EN&
   &http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd& >
<hibernate-mapping package=&com.jandar.model&>
<class name=&User& table=&APP_USER&>
   column=&ID&
   name=&id&
   type=&integer&
   <generator class=&assigned& />
  </id>
  <property
    column=&LASTNAME&
    length=&10&
    name=&lastname&
    not-null=&false&
    type=&string&
  <property
    column=&FIRSTNAME&
    length=&10&
    name=&firstname&
    not-null=&true&
    type=&string&
</class>
</hibernate-mapping>
2. 通过hibernate synchronizer->synchronizer file生成User.java文件,User对象对应于数据库中的app_user表
  注:在eclipse下自动生成的对象文件不完全相同,相同的是每个对象文件必须实现Serializable接口,必需又toString和hashCode方法;
import java.io.S
import mons.lang.builder.EqualsB
import mons.lang.builder.HashCodeB
import mons.lang.builder.ToStringB
import mons.lang.builder.ToStringS
public class BaseObject implements Serializable {
  public String toString() {
   return ToStringBuilder.reflectionToString(this,
   ToStringStyle.MULTI_LINE_STYLE);
  public boolean equals(Object o) {
   return EqualsBuilder.reflectionEquals(this, o);
  public int hashCode() {
   return HashCodeBuilder.reflectionHashCode(this);
public class User extends BaseObject {
  private L
  private String firstN
  private String lastN
  * @return Returns the id.
  public Long getId() {
   * @param id The id to set.
  public void setId(Long id) {
   this.id =
  * @return Returns the firstName.
  public String getFirstName() {
   return firstN
   * @param firstName The firstName to set.
  public void setFirstName(String firstName) {
   this.firstName = firstN
  * @return Returns the lastName.
  public String getLastName() {
   return lastN
  * @param lastName The lastName to set.
  public void setLastName(String lastName) {
   this.lastName = lastN
创建DAO访问对象
1. 在src/com.jandar.service.dao新建IDAO.java接口,所有的DAO都继承该接口
package com.jandar.services.
public interface IDAO {
2. 在src/com.jandar.service.dao下新建IUserDAO.java接口
public interface IUserDAO extends DAO {
  List getUsers();
  User getUser(Integer userid);
  void saveUser(User user);
  void removeUser(Integer id);
该接口提供了访问对象的方法
3. 在src/com.jandar.service.dao.hibernate下新建UserDAOHiberante.java
import java.util.L
import mons.logging.L
import mons.logging.LogF
import org.springframework.orm.hibernate.support.HibernateDaoS
import com.jandar.model.U
import com.jandar.service.dao.IUserDAO;
public class UserDaoHibernate extends HibernateDaoSupport implements IUserDAO {
  private Log log=LogFactory.getLog(UserDaoHibernate.class);
  /* (非 Javadoc)
  * @see com.jandar.dao.IUserDAO#getUsers()
  public List getUsers() {
   return getHibernateTemplate().find(&from User&);
  /* (非 Javadoc)
  * @see com.jandar.dao.IUserDAO#getUser(java.lang.Long)
  public User getUser(Integer id) {
   // TODO 自动生成方法存根
   return (User) getHibernateTemplate().get(User.class,id);
  /* (非 Javadoc)
  * @see com.jandar.dao.IUserDAO#saveUser(com.jandar.model.User)
  public void saveUser(User user) {
   log.debug(&xxxxxxx&);
   System.out.println(&yyyy&);
   getHibernateTemplate().saveOrUpdate(user);
   if(log.isDebugEnabled())
    log.debug(&userId set to &+user.getId());
  /* (非 Javadoc)
  * @see com.jandar.dao.IUserDAO#removeUser(java.lang.Long)
  public void removeUser(Integer id) {
   Object user=getHibernateTemplate().load(User.class,id);
   getHibernateTemplate().delete(user);
   if(log.isDebugEnabled()){
    log.debug(&del user &+id);
  在这个类中实现了IUserDAO接口的方法,并且继承了HibernateDAOSupport类。这个类的作用是通过hibernate访问、操作对象,进而实现对数据库的操作。
大家还看了:
[访问统计:]
上一篇:下一篇:
该分类还没有添加任何内容!您所在位置: &
&nbsp&&nbsp&nbsp&&nbsp
电子商务推荐系统的研究专业版.doc 34页
本文档一共被下载:
次 ,您可全文免费在线阅读后下载本文档。
下载提示
1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。
2.该文档所得收入(下载+内容+预览三)归上传者、原创者。
3.登录后可充值,立即自动返金币,充值渠道很便利
需要金币:100 &&
你可能关注的文档:
··········
··········
随着电子商务应用的不断扩大,个性化服务也得到越来越多的重视,大量的
商务软件产品都声称支持个性化。电子商务推荐系统是智能信息服务的体现,它
能够在了解用户的短期和长期需求的基础上对用户定制信息的搜索和发送机制,
并向用户有针对性的推荐商品。现有的推荐方法暴露出数据稀疏性问题,冷开始
问题以及推荐质量低下等问题,这些问题使得当前的普通推荐系统不能准确的挖
掘用户的兴趣,并将其最感兴趣的商品提供给用户。一
本文提出一种集成语义信息的新型推荐方法,该方法提出建立商品的语义关
联模型,该模型的结构通过一个行业语义信息训练中心的训练得到,最终产品的
语义信息被提取出来集成到现有的基于项目的协同过滤方法中。该方法利用了协
同过滤技术的利用其他用户的行为来提高信息的广度和精确度的特点,同时融合
了语义过滤技术深层挖掘用户隐含兴趣的优点。本文利用RDF形式的本体来表达
商品信息以及用户偏好信息,并设计了一种基于决策树的用户语义偏好模型,该
模型基于商品行业离线建立,在线应用,定期更新,增强了推荐系统的实时性能。
在上述工作的基础上,设计和开发了集成语义信息的电子商务推荐系统。该
系统基于B/S模式,为客户和系统管理员提供了一系列的浏览和操作。结果显示
该系统的集成语义推荐比已有的各种推荐系统更加符合现实世界中的个性化推
荐,它能够深层次挖掘用户兴趣迎合用户偏好,很大程度上克服了推荐质量低下
关键词:推荐系统协同过滤语义关联模型用户偏好RDFABSTRACT
独创性声明
本人声明所呈交的学位论文是本人在导师指导下进行的研究工作和取得的
研究成果,除了文中特别加以标注和致谢之处外,论文中不包含其他入已经发表
或撰写过的研究成果,也不包含为获得叁鲞基茎或其他教育机构的学位或证
书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中
作了明确的说明并表示了谢意。
学位论文作者签名:缔签字日期: 年月日
学位论文版权使用授权书
本学位论文作者完全了解..苤姿盘堂 有关保窖、使用学位论文的规定。
特授权墨鲞基堂:.可以将学位论文的全部或部分内容编入有关数据库进行检
索,并采用影印、缩印或扫描等复制手段保存、汇编以供查阅和借阅。同意学校
向国家有关都门或机构送交论文的复印侔和磁盘。
f保密的学位论文在解密后适用本授权说明)
学位论文作者签名:姿苏 导师签名:
签字日期:Z川年二月l臼 签字日期:≯刁年工月f日第一章绪论
1.1研究背景
第一章绪论
随着Internet和电子商务的迅速发展,人们能够获得的信息越来越多,这
一方面为我们的决策提供了更多的信息参考,但同时由于太多的信息量,用户花
费在检索信息上的时间也更多了。为适应信息量急剧增加,迫切需要相应信息检
一索技术产生。
特别是在电子商务的虚拟环境下,由于供应链和物流的发展,商家在网上所
能提供的商品种类和数量非常之多,但用户不可能通过一个小小的计算机屏幕一
眼就知道感兴趣的商品。通常来说,用户既不愿意花太多时间漫无边际在网上寻
·找自己想要的商品,也不可能像在物理环境下那样检查商品的质量。在这种情况
下,用户就很希望电子商务系统能够具有一种类似采购助手的功能,可以根据用
户的兴趣爱好自动地推荐给每个用户他们可能感兴趣而且满意的商品。
在这种情况下,电子商务个性化推荐系统(Personalized Recommendation
System for E-Commerce)应运而生。电子商务个性化推荐技术,尤其是协同过滤
技术,构成了现有电子商务个性化推荐系统的基础。在这里,之所以强调个性化,
是因为需要推荐系统能为每个用户推荐适合他们偏好和兴趣的产品,而不是千篇
一律的推荐。
电子商务推荐系统具有良好的发展和应用前景。目前,几乎所有大型的电子
商务系统,如Amazon,CDNOW,eBay,dangdang等,都不同程度的使用了各种形
式的推荐系统。各种提供个性化服务的Web站点也需要推荐系统的大力支持.在
日趋激烈的竞争环境下,电子商务推荐系统能有效保留用户,提高电子商务系统
的销售。成功的电子商务推荐系统将会产生巨大的经济效益。
1.2电子商务推荐系统的研究内容与研究现状
’1.2.1研究内容
电子商务推荐系统的研究内容和研究方向主要包括Ⅲ嘲.
1).推荐技术研究:目前主要的推荐技术主要包括基于内容的过滤和协同过第一章绪论
滤两种。由于基于内容的过滤自身的局限性嘲嘲,协同过滤推荐技术是当前研究
2).实时性研究:在大型电子商务推荐系统中,推荐系统的伸缩能力和实时
性要求越来越难以保证。如何有效满足推荐系统的实时性要求得到了越
正在加载中,请稍后...请教各位大大 如何把DAO导入到自定义标签类中
30java2000_net]
请教各位大大 如何把DAO导入到自定义标签类中
30java2000_net]
编辑:www.fx114.net
本篇文章主要介绍了"请教各位大大 如何把DAO导入到自定义标签类中
30java2000_net]",主要涉及到请教各位大大 如何把DAO导入到自定义标签类中
30java2000_net]方面的内容,对于请教各位大大 如何把DAO导入到自定义标签类中
30java2000_net]感兴趣的同学可以参考一下。
我已经在applicationContext.xml中
&bean&id="articleDao"&class="bbs.dao.ArticleDaoImpl"&
&property&name="hibernateTemplate"&
&ref&bean="hibernateTemplate"&/&
&/property&
&bean&name="showArticleListTags"
class="bbs.web.tags.ShowArticleListTags"&
&property&name="articleDao"&
&ref&bean="articleDao"&/&
&/property&
然后在自定义标签中使用articleDao的时候
articleDao.getArticle()
有异常java.lang.NullPointerException
是不是articleDao没导进自定义标签里牙,应该怎么设置
还是在自定义标签那除了getset方法还要写些什么代码?
希望各位大大能指点一下顶上去&&有高人能指点下吗那位好心的高人能指点下牙&&谢谢了帮顶&没用过
不过干嘛标签要这么设计
一、不得利用本站危害国家安全、泄露国家秘密,不得侵犯国家社会集体的和公民的合法权益,不得利用本站制作、复制和传播不法有害信息!
二、互相尊重,对自己的言论和行为负责。
本文标题:
本页链接:您所在位置: &
&nbsp&&nbsp&nbsp&&nbsp
面向高校的移动OA系统的设计与实现.pdf 71页
本文档一共被下载:
次 ,您可全文免费在线阅读后下载本文档。
下载提示
1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。
2.该文档所得收入(下载+内容+预览三)归上传者、原创者。
3.登录后可充值,立即自动返金币,充值渠道很便利
需要金币:200 &&
你可能关注的文档:
··········
··········
学 位 论 文
面向高校的移动OA 系统的设计与实现
(题名和副题名)
(作者姓名)
电子科技大学
石家庄电视台
(姓名、职称、单位名称)
申请学位级别 硕士 专业学位类别
工 程 硕 士
工程领域名称
软 件 工 程
提交论文日期
论文答辩日期
学位授予单位和日期 电子科技大学
2014 年6 月25
答辩委员会主席
注1:注明《国际十进分类法UDC》的类号。
FOR THE DESIGN AND IMPLEMENTATION OF
THE MOBILE OA SYSTEM
A Master Thesis Submitted to
University of Electronic Science and Technology of China
Master of Engineering
Zhang Shuo
Cai Hongbin
School of Information and Software Engineering
独创性声明
本人声明所呈交的学位论文是本人在导师指导下进行的研究
工作及取得的研究成果。据我所知,除了文中特别加以标注和致谢
的地方外,论文中不包含其他人已经发表或撰写过的研究成果,也
不包含为获得电子科技大学或其它教育机构的学位或证书而使用
过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论
文中作了明确的说明并表示谢意。
作者签名:
论文使用授权
本学位论文作者完全了解电子科技大学有关保留、使用学位论文
的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁盘,
允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文的全
部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描
等复制手段保存、汇编学位论文。
(保密的学位论文在解密后应遵守
正在加载中,请稍后...

我要回帖

更多关于 spring自定义标签 的文章

 

随机推荐