Connection con=null
try {
Class.forName("com.mysql.jdbc.Driver")
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace()
JAVA Web开发中与数据库的连接 *** 作,配置:1、新建数据库。
新建登录角色,在新建数据库的时候把数据库的所有权交给你新建的角色。用用户和密码控制数据库。保证数据库的安全。
2、编写context.xml文件 Xml文件的目的是封装用户和密码,也是封装的一种,方便 *** 作。
以下为context.xml文件样例:
<?xml version="1.0" encoding="utf-8"?>
<Context reloadable = "true">
<Resource
name="jdbc/sampleHS"
type="javax.sql.DataSource"
maxActive="14"
maxIdle="10"
username="hstaoshu"
maxWait="5000"
driverClassName="org.postgresql.Driver"
password="hstaoshu"
url="jdbc:postgresql://localhost:5432/hstaoshu"/>
</Context>
详细说明:
name="jdbc/sampleHS"里面的ssampHS是可改名称,建议根据需要自己命名;
username="hstaoshu"
password="hstaoshu"此两项为你新建的数据库登录角色用户名和密码信息,只有匹配 了才能访问。这里简单为了表示,把用户名和密码弄成了跟数据库名字一样。其实这是很不安全的。
url="jdbc:postgresql://localhost:5432/hstaoshu"/>
这是连接数据库的URl,就像访问网站的地址一样。没有这个是无法访问数据库的。localhost:5432表示本地端口。一般不需要改动,如果你在配置数据库的时候改动过端口,那么你需要把它改回来。/hstaoshu是你的数据库名称。
其他选项请勿擅自改动。
3、编写DAO类。
DAO类的作用是与数据连接后,对数据库的一些 *** 作的封装。封装的作用。为了更好的数据管理。
DAO是真正如何使用数据库的关键步骤,前两步只是部署和配置。
private static InitialContext context = null
private DataSource dataSource = null
//一般把跟数据库的连接放在DAO类的构造函数里,只要被实例化,就能和数据库连接。
public BookDAO() {
try {
if (context == null) {
context = new InitialContext()
}
dataSource = (DataSource) context.lookup("java:comp/env/jdbc/sampleHS")
// 连接数据库,前面在context.xml文件配置里的URl
} catch (NamingException e2) {
e2.printStackTrace()
}
}
public Connection getConnection() {
Connection conn = null
try {
conn = dataSource.getConnection()// 获得数据源的连接对象
} catch (SQLException e) {
e.printStackTrace()
}
return conn
}
做完上面的三步 *** 作,开发环境已经完全和数据库连接OK,可以开始数据库的 *** 作了。一般来说,对数据库的 *** 作语句都是提前封装好的。这样修改起来会对下面的代码影响降到最小。
如下:
// ------------------数据库 *** 作语句代码封装------------------
/* 查看所有图书 */
private static final String SELECT_ALL_SQL = "SELECT * FROM book"
那么在使用的时候只要直接调用:
pstmt = conn.prepareStatement(SELECT_ALL_SQL)
访问数据库有两种方式:Windows身份验证登录(不需要用户名和密码,适用于访问本地数据库,应用程序和SQL软件安装在同一台服务器)
SQL Server 身份验证登录(适用于访问其他计算机的数据库,当然也可以用这种方式访问本地数据库)
根据楼主的情况应该用 SQL Server 身份验证登录
数据库连接字符串一般写在 connectionStrings节点下,非强制性(如写在appsettings节点下),只不过这样可以用
ConfigurationManager.ConnectionStrings["connString"].ConnectionString
方便访问
以下是笔者的一个 web.config 文件的内容
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<connectionStrings>
<add name="connString" connectionString="Data Source=.Initial Catalog=TestDatabaseIntegrated Security=SSPI"/>
</connectionStrings>
</configuration>
附:数据库连接字符串的写法
SQL Server connection strings
SQL ODBC connection strings
Standard Security:<br>"Driver={SQLServer}Server=Your_Server_NameDatabase=Your_Database_NameUid=Your_UsernamePwd=Your_Password"
Trusted connection:<br>"Driver={SQLServer}Server=Your_Server_NameDatabase=Your_Database_NameTrusted_Connection=yes"
SQL OLE DB connection strings
Standard Security:
"Provider=SQLOLEDBData Source=Your_Server_NameInitial Catalog= Your_Database_NameUserId=Your_UsernamePassword=Your_Password"
Trusted connection:
"Provider=SQLOLEDBData Source=Your_Server_NameInitial Catalog=Your_Database_NameIntegrated Security=SSPI"
SQL OleDbConnection .NET strings
Standard Security:
"Provider=SQLOLEDBData Source=Your_Server_NameInitial Catalog= Your_Database_NameUserId=Your_UsernamePassword=Your_Password"
Trusted connection:
"Provider=SQLOLEDBData Source=Your_Server_NameInitial Catalog=Your_Database_NameIntegrated Security=SSPI"
SQL SqlConnection .NET strings
Standard Security:
1. "Data Source=Your_Server_NameInitial Catalog= Your_Database_NameUserId=Your_UsernamePassword=Your_Password" <br>2. "Server=Your_Server_NameDatabase=Your_Database_NameUserID=Your_UsernamePassword=Your_PasswordTrusted_Connection=False"
Trusted connection:
1. "Data Source=Your_Server_NameInitial Catalog=Your_Database_NameIntegrated Security=SSPI"
2."Server=Your_Server_NameDatabase=Your_Database_NameTrusted_Connection=True"
希望回答对你有帮助
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)