view_user.css
#userProfileCont
{
text-align:left
;
background: rgb(78,120,177)
;
}
#userProfile
{
width:20%
;
margin:2px
;
margin-top:0px
;
text-align:center
;
float:left
;
height:100%
;
}
#visiters
{
width:23%
;
margin:4px
;
margin-top:0px
;
float:right
;
}
#personalInfo
{
width:79%
;
text-align:left
;
margin:3px
;
float:right
;
}
#userPosts
{
margin:4px
;
margin-top:0px
;
text-align:center
;
width:55%
;
height:100%
;
float:left
;
}
.photo img
{
margin:4px
;
border:4px solid #999999
;
margin-top:10px
;
}
.visiter_photo img
{
margin:4px
;
border:4px solid #999999
;
margin-top:10px
;
}
.per_info
{
margin: 8px
;
width:70%
;
text-align:left
;
font-size:15px
;
border-bottom:dashed 1px #999999
;
}
.per_info span
{
margin-left:8px
;
color:red
;
}
andBbs-servlet.xml
<?
xml version="1.0" encoding="UTF-8"?>
<!
DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<
beans>
< bean id = "simpleMapping" class = "org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"
>
< property name = "alwaysUseFullPath" >< value > true </ value ></ property
>
< property name = "mappings"
>
< props
>
< prop key = "/servlet/user" > userController </ prop
>
< prop key = "/servlet/post" > postController </ prop
>
< prop key = "/servlet/ajax" > ajaxController </ prop
>
</ props
>
</ property
>
</ bean
>
< bean id = "viewResolver" class = "org.springframework.web.servlet.view.InternalResourceViewResolver"
>
< property name = "viewClass" value = "org.springframework.web.servlet.view.JstlView"
/>
< property name = "prefix" value = "/jsp/"
/>
< property name = "suffix" value = ".jsp"
/>
</ bean
>
< bean id = "paraMethodResolver"
class = "org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver"
>
< property name = "paramName" value = "action"
/>
</ bean
>
< bean id = "userController" class = "com.hzau.information.web.controller.UserController"
>
< property name = "methodNameResolver" ref = "paraMethodResolver" ></ property
>
</ bean
>
< bean id = "postController" class = "com.hzau.information.web.controller.PostController"
>
< property name = "methodNameResolver" ref = "paraMethodResolver" ></ property >
</ bean
>
< bean id = "ajaxController" class = "com.hzau.information.web.controller.AjaxController"
>
< property name = "methodNameResolver" ref = "paraMethodResolver" ></ property >
</ bean
>
</
beans >
web.xml
<?
xml version="1.0" encoding="UTF-8"?>
<
web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
< display-name > Android_BBS </ display-name
>
< welcome-file-list
>
< welcome-file > jsp/home.jsp </ welcome-file
>
</ welcome-file-list
>
< servlet
>
< servlet-name > andBbs </ servlet-name
>
< servlet-class > org.springframework.web.servlet.DispatcherServlet </ servlet-class
>
< init-param
>
< param-name > contextConfigLocation </ param-name
>
< param-value
>
/WEB-INF/context/andBbs-servlet.xml
</ param-value
>
</ init-param
>
< load-on-startup > 1 </ load-on-startup
>
</ servlet
>
< servlet-mapping
>
< servlet-name > andBbs </ servlet-name
>
< url-pattern > /servlet/* </ url-pattern
>
</ servlet-mapping
>
</
web-app >
CommonDao.java
package
com.hzau.information.dao;
import
java.io.Serializable;
import
org.hibernate.Session;
import
org.hibernate.SessionFactory;
import
org.hibernate.Transaction;
public
class CommonDao implements
ICommonDao {
SessionFactory
sessionFactory
;
public void
setSessionFactory(SessionFactory sessionFacotry){
this.sessionFactory
=sessionFacotry;
}
public
SessionFactory getSessionFactory(){
return this.sessionFactory
;
}
public
Object get(Class clz,Serializable object){
Session session=
sessionFactory
.openSession();
Transaction tx=
null
;
Object obj=
null
;
try
{
tx=session.beginTransaction();
obj= session.get(clz, object);
tx.commit();
}
catch
(RuntimeException e){
if(tx!=null
){
tx.rollback();
}
throw
e;
}
finally
{
session.close();
}
return
obj;
}
ICommonDao.java
package
com.hzau.information.dao;
import
java.io.Serializable;
import
org.hibernate.SessionFactory;
public
interface ICommonDao {
public void setSessionFactory(SessionFactory sessionFacotry);
public SessionFactory getSessionFactory();
public Object get(Class clz,Serializable object);
}
IPostDao.java
package
com.hzau.information.dao;
import
java.util.List;
import
com.hzau.information.domain.Comment;
import
com.hzau.information.domain.Post;
public
interface
IPostDao {
public
Post getPostById(Long postId);
public boolean
savePost(Post post);
public boolean
savePost(Long post,Comment comment);
public boolean
savePost_Comment(Comment comment);
public
List<Post> findPostByTopicId(Long topicId);
}
IUserDao.java
package
com.hzau.information.dao;
import
org.hibernate.SessionFactory;
import
com.hzau.information.domain.User;
public
interface IUserDao {
public SessionFactory getSessionFactory();
public User getUserByName(String userName);
public boolean saveUser(User user);
public User getUserById(Long userId);
}
PostDao.java
package
com.hzau.information.dao;
import
java.util.ArrayList;
import
java.util.Date;
import
java.util.List;
import
org.hibernate.Session;
import
org.hibernate.SessionFactory;
import
org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import
com.hzau.information.HibernateUtil;
import
com.hzau.information.domain.Comment;
import
com.hzau.information.domain.Post;
public
class PostDao extends HibernateDaoSupport implements
IPostDao {
@Override
public
Post getPostById(Long postId) {
Post post=
null
;
try
{
SessionFactory factor=HibernateUtil.getSessionFactory();
Session session=factor.openSession();
session.beginTransaction();
List list=session.createQuery(
"from Post u where u.id = :id ").setLong("id"
, postId).list();
if(list!=null
&&list.size()!=0){
post=(Post)list.get(0);
}
session.clear();
session.close();
}
catch
(Exception e){
e.printStackTrace();
}
return
post;
}
public boolean
savePost(Post post){
try
{
SessionFactory factor=HibernateUtil.getSessionFactory();
Session session=factor.openSession();
session.beginTransaction();
session.save(post);
return true
;
}
catch
(Exception e){
e.printStackTrace();
}
return false
;
}
public boolean
savePost(Long postId,Comment comment){
try
{
SessionFactory factor=HibernateUtil.getSessionFactory();
Session session=factor.openSession();
session.beginTransaction();
session.save(comment);
Post post=
null
;
List list=session.createQuery(
"from Post u where u.id = :id ").setLong("id"
, postId).list();
if(list!=null
&&list.size()!=0){
post=(Post)list.get(0);
post.getComments().add(comment);
post.setCommentCount(post.getComments().size());
session.save(comment);
session.save(post);
session.getTransaction().commit();
session.close();
return true
;
}
else
{
return false
;
}
}
catch
(Exception e){
e.printStackTrace();
}
return false
;
}
public boolean
savePost_Comment(Comment comment){
try
{
SessionFactory factor=HibernateUtil.getSessionFactory();
Session session=factor.openSession();
session.beginTransaction();
session.save(comment);
session.clear();
session.close();
return true
;
}
catch
(Exception e){
e.printStackTrace();
}
return false
;
}
public
List<Post> findPostByTopicId(Long topicId){
List<Post> posts=
new
ArrayList<Post>();
try
{
SessionFactory factor=HibernateUtil.getSessionFactory();
Session session=factor.openSession();
session.beginTransaction();
posts=session.createQuery(
"from Post p order by p.postTime desc"
).list();
session.clear();
session.close();
}
catch
(Exception e){
e.printStackTrace();
}
return
posts;
}
public static void
main(String[] args) {
//Save post without comment
Post post=
new
Post();
post.setTitle(
"American International Group, Inc."
);
post.setReadCount(5);
post.setCommentCount(2);
post.setContent(
"lsdfkjlxcj lkelj j ovjvjlxckj j iwejo ijlxc"
);
post.setPoster(1l);
post.setPostTime(
new
Date());
try
{
SessionFactory factor=HibernateUtil.getSessionFactory();
Session session=factor.openSession();
session.beginTransaction();
session.save(post);
}
catch
(Exception e){
e.printStackTrace();
}
// //Save users
// User user =new User();
// user.setuserName("lichengri008");
// user.setPassword("welkiei");
// PersonalProfile pp=new PersonalProfile();
// pp.setEmail("lichengri008@126.com");
// pp.setIconUrl("/Android_BBS/images/default_pro.bmp");
// user.setPerProfile(pp);
// SystemProfile sp=new SystemProfile();
// sp.setContribute(0);
// sp.setLevel(0);
// sp.setOnLineTime(0l);
// sp.setRegisterDate(new Date());
// user.setSysProfile(sp);
//
// try{
// SessionFactory factor=HibernateUtil.getSessionFactory();
// Session session=factor.openSession();
// session.beginTransaction();
// session.save(pp);
// session.save(sp);
// session.save(user);
// }catch(Exception e){
// e.printStackTrace();
// }
// //Save post without comment
// Comment comment=new Comment();
// comment.setContent("Good post but not for me !");
// comment.setIssueTime(new Date());
// comment.setUserId(21l);
//
// post.getComments().add(comment);
//
// try{
// SessionFactory factor=HibernateUtil.getSessionFactory();
// Session session=factor.openSession();
// session.beginTransaction();
//
// session.save(comment);
//
// session.save(post);
// session.getTransaction().commit();
//
// }catch(Exception e){
// e.printStackTrace();
// }
}
}
UserDao.java
package
com.hzau.information.dao;
import
java.util.List;
import
org.hibernate.Session;
import
org.hibernate.SessionFactory;
import
org.springframework.orm.hibernate3.support.HibernateDaoSupport;
import
com.hzau.information.HibernateUtil;
import
com.hzau.information.domain.User;
public
class UserDao extends HibernateDaoSupport implements IUserDao {
@Override
public User getUserByName(String userName) {
User user=
null;
try{
SessionFactory factor=HibernateUtil.getSessionFactory();
Session session=factor.openSession();
session.beginTransaction();
List list=session.createQuery(
"from User u where u.userName = :userName ").setString("userName", userName).list();
if(list!=null&&list.size()!=0){
user =(User)list.get(0);
}
}
catch(Exception e){
e.printStackTrace();
}
return user;
}
@Override
public boolean saveUser(User user) {
// TODO Auto-generated method stub
try{
SessionFactory factor=HibernateUtil.getSessionFactory();
Session session=factor.openSession();
session.beginTransaction();
session.save(user.getPerProfile());
session.save(user.getSysProfile());
session.save(user);
session.getTransaction().commit();
return true;
}
catch(Exception e){
e.printStackTrace();
}
return false;
}
@Override
public User getUserById(Long userId) {
User user=
null;
try{
SessionFactory factor=HibernateUtil.getSessionFactory();
Session session=factor.openSession();
session.beginTransaction();
List list=session.createQuery(
"from User u where u.id = :id ").setLong("id", userId).list();
if(list!=null&&list.size()!=0){
user =(User)list.get(0);
}
}
catch(Exception e){
e.printStackTrace();
}
return user;
}
}