首先感谢于老师百忙之中抽出时间看我得博客,这是我的第一次作业。第一个Hibernate的demo。
编译器是IDEA
首先集成maven:
新建一个maven项目:
连接到数据库:
下面加入Hibernate功能:
maven里面的部分jar:
<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-core --> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-core</artifactId> <version>5.2.9.Final</version> </dependency> <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.41</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> </dependency> </dependencies>
pom.xml代码:
<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.11</version> <scope>test</scope> </dependency> <!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-core --> <!--hibernate核心jar包--> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-core</artifactId> <version>5.2.9.Final</version> </dependency> <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --> <!--数据库连接驱动--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.41</version> </dependency> </dependencies>
集成之后的项目结构:
代码:
package com.haibo.dao; import com.haibo.po.User; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.cfg.Configuration; import org.junit.Test; /** * Created with IDEA. * User:haibo. * DATE:2018/5/4/004 */ public class UserDAOImpl implements IUserDAO { private Configuration cfg; private SessionFactory sf; public UserDAOImpl(){ cfg=new Configuration().configure("hibernate.cfg.xml"); sf=cfg.buildSessionFactory(); } @Test public void add() { Session session=sf.openSession(); Transaction trans=session.getTransaction(); trans.begin(); User user=new User(); user.setUserName("hhiber"); user.setPassword("demo"); user.setGender("三"); session.save(user); trans.commit(); session.close(); }
hibernate.cfg.xml
<?xml version='1.0' encoding='utf-8'?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN" "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd"> <hibernate-configuration> <session-factory> <property name="connection.url">jdbc:mysql://localhost:3306/user</property> <property name="connection.driver_class">com.mysql.jdbc.Driver</property> <property name="connection.username">root</property> <property name="connection.password">root</property> <mapping class="com.haibo.po.User"/> <!-- DB schema will be updated if needed --> <!-- <property name="hbm2ddl.auto">update</property> --> </session-factory> </hibernate-configuration>
向数据库添加数据成功:
出现的问题:
1:jar包 容易导错,
2:xml文档的标签顺序;mapping在property后面
由于实验要求,按老师的要求又用myeclipse重新写了一遍:
user。hbm。xml
<hibernate-mapping package="com.Entity.User"> <class name="User" table="user"> <id name="userId" column="userId"> <generator class="identity" /></id> <property name="userName" column="userName"/> <property name="password" column="password"/> <property name="gender" column="gender"/> </class> </hibernate-mapping>
参考博客:https://blog.csdn.net/violet_echo_0908/article/details/50839373点击打开链接