此贴仅作为学习框架记录,作为一个刚接触maven的新手(刚学完hibernate+springmvc之前学的sturs2+mybatis),之前有用框架做过几个练手项目,那时还不知道maven,一个项目下来jar包贼多,myeclipse几次都报内存不够(哈哈),还有学习框架的时候各种jar包网上找,心好累,到现在学了maven,才发现真的好用,刚好就用来整合spingmvc+hibernate+spring,先贴下项目截图
userDao接口:
package com.dailingnan.dao;
import com.dailingnan.entity.User;
public interface UserDao {
public User save(T o);
}
userDaoImpl:dao层实现类
package com.dailingnan.dao;
import javax.annotation.Resource;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.springframework.stereotype.Repository;
import com.dailingnan.entity.User;
@Repository("userDao")
public class UserDaoImpl implements UserDao {
@Resource
private SessionFactory sessionFactory;
public SessionFactory getSessionFactory() {
return sessionFactory;
}
public void setSessionFactory(SessionFactory sessionFactory) {
this.sessionFactory = sessionFactory;
}
public User save(User o) {
// TODO Auto-generated method stub
Session session = sessionFactory.openSession();
session.save(o);
return o;
}
}
userService接口:
package com.dailingnan.service;
import com.dailingnan.entity.User;
public interface UserService {
public User save(User user);
}
package com.dailingnan.service;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.dailingnan.dao.UserDao;
import com.dailingnan.entity.User;
@Service("userService")
@Transactional
public class UserServiceImpl implements UserService {
@Resource
private UserDao userDao;
public User save(User user) {
// TODO Auto-generated method stub
System.out.println(user);
return userDao.save(user);
}
}
package com.dailingnan.controller;
import javax.annotation.Resource;
import org.springframework.stereotype.Controller;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.RequestMapping;
import com.dailingnan.entity.User;
import com.dailingnan.service.UserService;
@Controller
public class UserControllor {
@Resource
private UserService userService;
@RequestMapping("index")
public String findUser(){
System.out.println("index");
return "/index.jsp";
}
@RequestMapping("reg")
public String saveUser() {
System.out.println(userService);
User user = new User();
user.setUsername("戴岭南");
userService.save(user);
return "/index.jsp";
}
}
首先databases.properties
#\u5C5E\u6027\u6587\u4EF6
#Oracle \u7684\u914D\u7F6E
#hibernate.dialect=org.hibernate.dialect.OracleDialect
#driverClassName=oracle.jdbc.driver.OracleDriver
#validationQuery=SELECT 1 FROM DUAL
#jdbc_url=jdbc:oracle:thin:@localhost:1521:orcl
#jdbc_username=
#jdbc_password=
#SQLServer \u7684\u914D\u7F6E
#hibernate.dialect=org.hibernate.dialect.SQLServerDialect
#driverClassName=net.sourceforge.jtds.jdbc.Driver
#validationQuery=SELECT 1
#jdbc_url=jdbc:jtds:sqlserver://127.0.0.1:1433/sy
#jdbc_username=
#jdbc_password=
#Derby \u7684\u914D\u7F6E
#hibernate.dialect=org.hibernate.dialect.DerbyDialect
#driverClassName=org.apache.derby.jdbc.EmbeddedDriver
#validationQuery=SELECT 1
#jdbc_url=jdbc:derby:sy;create=true
#jdbc_username=
#jdbc_password=
#MySQL \u7684\u914D\u7F6E
hibernate.dialect=org.hibernate.dialect.MySQLDialect
driverClassName=com.mysql.jdbc.Driver
validationQuery=SELECT 1
url=jdbc:mysql://localhost:3306/shop1?useUnicode=true&characterEncoding=UTF-8
username=root
password=123456
hibernate.hbm2ddl.auto=update
hibernate.show_sql=true
hibernate.format_sql=true
spring-bibernate.xml
${hibernate.hbm2ddl.auto}
${hibernate.dialect}
${hibernate.show_sql}
${hibernate.format_sql}
springmvc.xml
spring.xml
contextConfigLocation
classpath:spring.xml,classpath:spring-hibernate.xml,
org.springframework.web.context.ContextLoaderListener
encodingFilter
org.springframework.web.filter.CharacterEncodingFilter
encoding
UTF-8
encodingFilter
/*
openSessionInView
org.springframework.orm.hibernate4.support.OpenSessionInViewFilter
openSessionInView
/*
spring mvc servlet
springMVC
org.springframework.web.servlet.DispatcherServlet
spring mvc 配置文件
contextConfigLocation
classpath:spring-mvc.xml
1
springMVC
*.html
对应作为新手的我而言pom.xml也花了很多时间,不知道该导那些包,就一直找,所以我还是贴出来吧。方便和我一样的新手(哈哈)
pom.xml
4.0.0
com.dailingnan
maven-demo3
war
0.0.1-SNAPSHOT
maven-demo3 Maven Webapp
http://maven.apache.org
org.apache.maven.plugins
maven-resources-plugin
2.4.3
junit
junit
3.8.1
test
org.hibernate
hibernate-core
4.3.2.Final
commons-dbcp
commons-dbcp
1.4
org.springframework
spring-tx
4.3.5.RELEASE
mysql
mysql-connector-java
5.1.40
org.springframework
spring-webmvc
4.3.5.RELEASE
org.springframework
spring-context
4.3.4.RELEASE
org.springframework
spring-orm
4.1.6.RELEASE
maven-demo2
org.apache.felix
maven-bundle-plugin
true
注:maven对应的classpath在resourses