Hibernate配置Myeclipse与SQL Server 2008链接

一、首先先建立一个Web Project

二、然后在程序根目录建立文件夹“DataBase”和“Doc”,分别存放数据库文件和保存SQL语句,建完如下所示:

 

三、建立数据库“dbHibernate”,保存到文件夹“DataBase”下

四、书写SQL语句,创建“student”表

-- 数据库名称  dbHibernate

-- 版本        SQLServer2008

 

--学生表

create table student(

   ID varchar(10) primary key,

   Name varchar(20) not null,

)

 

--插入数据

insert into student values('101','张三');

insert into student values('102','李四');

insert into student values('103','王五');

五、打开“DB Browser”后,右击选择“New...”,Driver template选择“Microsoft SQL Server”,Driver name为“Hibernate”,Connection URL为“jdbc:sqlserver://localhost:1433; DatabaseName=dbHibernate”,然后就是数据库的User name以及Password;还要添加“sqljdbc4.jar”驱动包,点击“Test Driver”,可以看到测试成功

 

六、然后点击“Next”,选择“Display the selected schemas”,点击“Add”添加数据库“dbHibernate”,最后“Finish”。

 

七、右击项目“Hibernate”->Myeclipse->Add Hibernate Capabilities...,然后默认点击“Next

 

八、选择“Browse”,添加自己建立的包名,然后“Next”后,选择“DB Driver”下的“Hibernate”,下面的内容将自动调出。然后“Next”,选择“Java package”

九、建完后,在包“com.langguojie.Hibernate”下添加了“HibernateSessionFactory.java”以及“hibernate.cfg.xml”两个文件

 

十、在“DB Browser”下,选择“Hibernate”->“Open connection”->Connected to Hibernate->dbo->TABLE->student,右击选择“Hibernate Reverse Engineering

 

十一、选择 Java package:“com.langguojie.Hibernate.orm”,然后选择如下图所示内容,点击“Finish”即可。

 

十二、在包“com.langguojie.Hibernate.orm”下添加了“Student.java”和“Student.hbm.xml”两个文件

 

十三、在index.jsp中添加如下代码:

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<% @page  import = "com.langguojie.Hibernate.orm.Student" %>
<% @page  import = "org.hibernate.Query" %>
<% @page  import = "com.langguojie.Hibernate.HibernateSessionFactory" %>
<% @page  import = "org.hibernate.Session" %>
<center>
           学生管理<br>
           <br>
           <a href= "StudentAdd.html" >添加</a><br>
           <br>
           <table border= "1"  cellspacing= "0"  cellpadding= "4" >
           <%
               Session ss = HibernateSessionFactory.getSession();   //建立Session对象ss      
               ss.beginTransaction();                               //打开Transaction
     
               Query query=ss.createQuery( "from Student" );          //调用函数Query查询
                 
               List<Student>studentList =  new  ArrayList<Student>();   //将查询的结果放到List表中
               studentList = query.list(); 
               for ( int  i =  0  ;i < studentList.size();i++){
            %>
 
           <tr>
             <td><%=studentList.get(i).getId()%></td>      <!--  输出ID -->
             <td><%=studentList.get(i).getName()%></td>    <!--  输出姓名 -->
             <td><a href= 'StudentEdit.jsp?ID=<%=studentList.get(i).getId()%>' >修改</a>
             </td>
             <td><a href= 'servlet/StudentDelete.do?ID=<%=studentList.get(i).getId()%>' >删除</a>
             </td>
          </tr>
 
          <%
             }
             ss.close();        //关闭Transaction
          %>
          </table>
</center>

 

十四、建立添加页面“StudentAdd.html,代码如下:

 

1
2
3
4
5
6
< form  id="form1" name="form1" method="post"action="servlet/StudentAdd.do">
       < center >添加< br >< br >
       学号:< input  type="text" id="ID" name="ID">< br >< br >
       姓名:< input  type="text" id="Name" name="Name" >< br >< br >
       < input  type="submit" value="确定"></ center >
</ form >

 

十五、建立servletStudentAdd.java,使用函数“doPost()”代码如下:

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
request.setCharacterEncoding( "UTF-8" );
String strID =  "" ;
String strName =  "" ;
         
strID = request.getParameter( "ID" );          //获取ID
strName = request.getParameter( "Name" );      //获取Name
         
Session ss = HibernateSessionFactory.getSession();<br>ss.beginTransaction();
Student s =  new  Student();
s.setId(strID);
s.setName(strName);
ss.save(s);                 //保存数据
ss.getTransaction().commit();  //提交数据
ss.close();
         
response.sendRedirect( "../index.jsp" );

 

十六、建立编辑页面“StudentEdit.jsp”,代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<% @page  import = "com.langguojie.Hibernate.orm.Student" %>
<% @page  import = "com.langguojie.Hibernate.HibernateSessionFactory" %>
<% @page  import = "org.hibernate.Session" %>
<%
        request.setCharacterEncoding( "UTF-8" );
        String strID= "" ;
        
        strID = request.getParameter( "ID" );
        
        Session ss = HibernateSessionFactory.getSession();
        ss.beginTransaction();
        Student student = (Student)ss.get(Student. class , strID);
              
        ss.getTransaction().commit();
        ss.close();
      %>
   <center>
 
      <% if (student !=  null ){ %>
     
      <br><br>编辑学生信息<br>
      <form name= "f1"  id= "f1"  action= "servlet/StudentEdit.do"  method= "post" >
       <table border= "0" >
         <tr>
           <td>学号:</td>
           <td><input type= "text"  readonly= "readonly"  name= "ID"  id= "ID"  value= "<%=student.getId() %>" > 学号不允许编辑</td>
         </tr>
         
         <tr>
           <td>姓名:</td>
           <td><input type= "text"  name= "Name"  id= "Name"  value= "<%=student.getName() %>" ></td>
         </tr>
          
         <tr>
           <td colspan= "2"  align= "center" ><input type= "submit"  value= " 确定 "  ></td>
         </tr>
         
       </table>
      </form>
      <%}  else  { %>
      <br><br>编辑学生信息<br><br>
      学号为<%=strID %>的学生数据在数据库中不存在!<br><br>
      <a href= "index.jsp" >返回</a>
      <%} %>
   </center>

十七、建立servletStudentEdit.java”,使用函数“doPost()”,代码如下:

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
request.setCharacterEncoding( "utf-8" );
String strID =  "" ;
String strName =  "" ;
         
strID = request.getParameter( "ID" );
strName = request.getParameter( "Name" );
         
Session session = HibernateSessionFactory.getSession();
session.beginTransaction();
Student student = (Student)session.load(Student. class , strID);
student.setName(strName);
         
session.update(student);
         
session.getTransaction().commit();
session.close();
         
response.sendRedirect( "../index.jsp" );

 

十八、建立servleStudentDelete.java”,使用函数“doGet()”,代码如下:

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
request.setCharacterEncoding( "UTF-8" );
String strID= "" ;
     
strID = request.getParameter( "ID" );
 
Session ss = HibernateSessionFactory.getSession();
ss.beginTransaction();
         
Student student = (Student)ss.load(Student. class , strID);
ss.delete(student);
         
ss.getTransaction().commit();
ss.close();
         
response.sendRedirect( "../index.jsp" );

 

十九、运行结果截图:

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值