您的位置:首页 > 编程语言 > Java开发

MyEclipse 2017 Ci 1 用hibernate5.0连接SQL Server 2014

2017-03-26 00:22 344 查看
MyEclipse 2017 Ci 1 用hibernate5.0连接SQL Server 2014
本人是一名安卓菜鸟,最近在学Java Web,想自己给自己写接口,简单的账户密码登录已经没问题了,但是复杂一些的还写不出来,之前访问数据库都是写SQL语句,select
* from A……刚开始不知道怎么用框架,大篇幅的写原生语句,累死人。然后就研究hibernate框架吧,发现我下载的是最新版本的MyEclipse 2017 Ci 1,百度的教程都是以前出的,代码用在这里面有时候会报错,于是自己鼓捣了好久,今天总算会用hibernate5.0连接SQL
Server 2014了,不用再写原生的SQL语句了。接下来进入正题:
一、在SQL Server 2014中新建数据库Test和表student(安装请自行百度,这里不做讲解)



 
其中sid表示学生编号,sname表示学生姓名,sage表示学生年龄,sadress表示学生住址,ssex表示学生性别,sgrade表示学生分数。啊哈,数据库和表都建完了,接下来没数据库啥事了,进入第二步。
二、打开MyEclipse 2017 Ci 1新建一个Java web项目(不过我们没用的web功能,只用了一个简单的Java类)。
 


命名为March25night(因为今天是3月25日),然后点击完成,项目结构是这样的:
 


啥也没有,接下来我们在src目录下创建一个包和一个测试类Test.java
 


 


依然是空的,我们暂时不管。接下来到了连接数据库了,注意看步骤:
点击添加视图的按钮,把数据库和hibernate添加进来:
 


添加进来的视图是这样的:
 


然后我们点击hibernate进入连接数据库的页面:
 
 


 
这时候点击右键--new--出这个页面
 


这时候我们需要做一些配置了,首先第一个大红框Driver template咱们选择的是Microsoft SQL Server(jTDS driver),Driver
name这个选项随便取一个名字,Connection URL有固定的格式:jdbc:jtds:sqlserver://服务器地址:端口号/数据库名字
,所以我的是这样的:   
jdbc:jtds:sqlserver://localhost:1433/Test,下面一个是username和password,这是咱们SQL
server的登录名和密码;接下来选择驱动的jar包,找到位置添加后我们点击Test Driver,如果连接成功了则显示这样的界面:(注意:jar包还需要添加到webroot--webinfo--lib下,然后buildpath)
jar包点击下载

 


成功后点finish就OK了。然后我们新建的连接就显示了,右键打开它:
 


有没有发现我们刚刚建的表出来了,所有字段都出现了:
 


好,我们先回到项目中把框架添加进来,然后在对它进行映射
在项目中点击右键--Config facets--Install Hibernate facet
 
 


 


finish就行。再回到刚刚出现数据库那页,忘了点击什么了?点这里
 


在student表上点右键--Hibernate Reverse Engineering--选择文件夹,选择包后把红框选上,接着再来一次,这次选择第一项的Add
hibernate mapping……
 


 


Ok,完成后回到项目中,看看发生了什么变化吧:是不是多了很多文件?
 



文件具体什么意思请自行百度,接下来配置完了我们需要对数据库写入了:
进入我们的Test.java中写测试代码:
package com.billy.lu;

 

import java.util.ArrayList;

import java.util.List;

 

import org.hibernate.Session;

import org.hibernate.SessionFactory;

import org.hibernate.Transaction;

import org.hibernate.boot.MetadataSources;

import org.hibernate.boot.registry.StandardServiceRegistry;

import org.hibernate.boot.registry.StandardServiceRegistryBuilder;

import org.hibernate.cfg.Configuration;

 

public class Test {

 

/**

 * @param args

 */

public static void main(String[]args) {

// TODO Auto-generated method stub

Configuration cf = new Configuration().configure();

StandardServiceRegistry ssr =
new
 StandardServiceRegistryBuilder().configure().build();

SessionFactory sf = new MetadataSources(ssr).buildMetadata().buildSessionFactory();

Session session =
sf.openSession();

Transaction ts =
session.beginTransaction();

// 为了演示效果,我一次插入多条吧

// 用list装5条数据

Student stu = new Student();

StudentId stuid;

stuid =new StudentId();

stuid.setSid("01");

stuid.setSname("BillyLu");

stuid.setSage("23");

stuid.setSadress("云南保山");

stuid.setSsex("男");

stuid.setSgrade("60");

 

stu.setId(stuid);

session.save(stu);

 

ts.commit();

session.close();

sf.close();

}

}

 

代码完成后点击保存,然后运行,运行结束后查看刚刚的数据库~
 


为什么会有3条呢?(因为我运行了3次,哈哈,睡啦睡啦)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: