Web:struts2
Service
Dao:hibernate
- 创建项目
2.1创建一个tieba的web工程
- 注意把工程的编码更改成UTF-8,以后工作开发,没有特殊要求,都是UTF-8的工程
2.2 导入准备好的静态界面
- 将页面导入到WebContent目录下,然后就后缀改成jsp
- 导Struts包
- 把struts2-blank中的lib下所有的包导入自己创建的工程
- 把struts2-blank里classes目录下的struts.xml配置文件拷贝到自己创建工程的src
- 在web.xml中,配置sturts的Filter
【org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter】
struts.xml |
Web.xml |
TopicAction.java |
- 导Hibernate包
- 导入hibernate-distribution-3.6.10.Final\lib\jpa的一个jar包
- 导入hibernate-distribution-3.6.10.Final\lib\required的所有jar包
- 导入hibernate3.jar核心包和导入mysql数据库驱动
- 导入hibernate.cfg.xml到src并配置基本信息
hibernate.cfg.xml配置信息,数据库名自己定义 | |
|
- 配置javaBean和映射文件
Topic
public class Topic {
private Integer tid; private String title; //标题 private String topicContent; //内容 private String ipAddr; //ip地址(作者) private Date lastReplyDate; //最后回复时间 private Date createDate; //发帖时间(创建时间)
//一对多: 一个主题 可以拥有 【多个回复】 private Set<Reply> replySet = new HashSet<Reply>(); } |
Reply
public class Reply { private Integer rid; private String replyContent; //回复的内容 private String ipAddr; //作者(回复人) private Date createDate; //回帖时间 private Topic topic; //多对一:多个回复 属于 【一个主题】 } |
Topic.hbm.xml
Reply.hbm.xml
- 配置事务拦截器
简化代码
Web.xml配置 |
- 保存话题
- 这里把service层省了,真实的开发都会添加service层,为了讲课方便,这里就少了。
Html
Action
Dao
- 话题列表
Dao
Action:
Html
- 话题查询
- 乱码问题
- 一般提交post请求时,后台接收到的参数是正确的,不会乱码
- 但是如果是get请求【tomcat7以前】,服务器接收时,有可能是乱码
- 解决办法,配置一个过滤
第一步:从事先准备好的文件导入到项目中
第二步:然后在web.xml配置编码过滤器