带有Hibernate的Web应用程序(使用XML)

在这里, 我们将使用hibernate创建一个Web应用程序。为了创建Web应用程序, 我们将JSP用于表示逻辑, 将Bean类用于表示数据, 将DAO类用于数据库代码。
在hibernate中创建简单应用程序时, 无需在hibernate中执行任何额外的操作即可创建Web应用程序。在这种情况下, 我们将使用JSP文件从用户那里获得价值。
使用Hibernate创建Web应用程序的示例
在此示例中, 我们将在数据库中插入用户的记录。这只是一张注册表。
index.jsp 该页面从用户那里获取输入, 并使用post方法将其发送到register.jsp文件。

< form action="register.jsp" method="post"> Name:< input type="text" name="name"/> < br> < br/> Password:< input type="password" name="password"/> < br> < br/> Email ID:< input type="text" name="email"/> < br> < br/> < input type="submit" value="http://www.srcmini.com/register"/> "< /form>

register.jsp 该文件获取所有请求参数, 并将此信息存储到User类的对象中。此外, 它通过User类对象调用UserDao类的register方法。
< %@page import="com.srcmini.mypack.UserDao"%> < jsp:useBean id="obj" class="com.srcmini.mypack.User"> < /jsp:useBean> < jsp:setProperty property="*" name="obj"/> < % int i=UserDao.register(obj); if(i> 0) out.print("You are successfully registered"); %>

User.java 它是表示Hibernate中Persistent类的简单bean类。
package com.srcmini.mypack; public class User { private int id; private String name, password, email; //getters and setters}

user.hbm.xml 【带有Hibernate的Web应用程序(使用XML)】它将User类与数据库表进行映射。
< ?xml version='1.0' encoding='UTF-8'?> < !DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 5.3//EN" "http://hibernate.sourceforge.net/hibernate-mapping-5.3.dtd"> < hibernate-mapping> < class name="com.srcmini.mypack.User" table="u400"> < id name="id"> < generator class="increment"> < /generator> < /id> < property name="name"> < /property> < property name="password"> < /property> < property name="email"> < /property> < /class> < /hibernate-mapping>

UserDao.java Dao类, 包含用于存储User类实例的方法。
package com.srcmini.mypack; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.boot.Metadata; import org.hibernate.boot.MetadataSources; import org.hibernate.boot.registry.StandardServiceRegistry; import org.hibernate.boot.registry.StandardServiceRegistryBuilder; public class UserDao {public static int register(User u){ int i=0; StandardServiceRegistry ssr = new StandardServiceRegistryBuilder().configure("hibernate.cfg.xml").build(); Metadata meta = new MetadataSources(ssr).getMetadataBuilder().build(); SessionFactory factory = meta.getSessionFactoryBuilder().build(); Session session = factory.openSession(); Transaction t = session.beginTransaction(); i=(Integer)session.save(u); t.commit(); session.close(); return i; } }

hibernate.cfg.xml 它是一个配置文件, 包含有关数据库和映射文件的信息。
< ?xml version='1.0' encoding='UTF-8'?> < !DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 5.3//EN" "http://hibernate.sourceforge.net/hibernate-configuration-5.3.dtd"> < hibernate-configuration> < session-factory> < property name="hbm2ddl.auto"> create< /property> < property name="dialect"> org.hibernate.dialect.Oracle9Dialect< /property> < property name="connection.url"> jdbc:oracle:thin:@localhost:1521:xe< /property> < property name="connection.username"> system< /property> < property name="connection.password"> jtp< /property> < property name="connection.driver_class"> oracle.jdbc.driver.OracleDriver< /property> < mapping resource="user.hbm.xml"/> < /session-factory> < /hibernate-configuration>

输出量
带有Hibernate的Web应用程序(使用XML)

文章图片
带有Hibernate的Web应用程序(使用XML)

文章图片
下载

    推荐阅读