日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Mybatis+Tomcat使用JNDI配置数据源入门

發(fā)布時(shí)間:2025/3/11 编程问答 13 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Mybatis+Tomcat使用JNDI配置数据源入门 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
在我們已經(jīng)有了Mybatis基礎(chǔ)的情況下,我們可以使用Tomcat部署web項(xiàng)目

1.創(chuàng)建Maven項(xiàng)目

選擇webapp

2.配置pom.xml

在pom.xml中添加依賴 這里的依賴比單純的Mybatis配置多了兩個(gè) 一個(gè)是jsp的依賴,另一個(gè)是servlet

<dependencies><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>3.5.4</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.6</version></dependency><dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.12</version></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.10</version></dependency><dependency><groupId>javax.servlet.jsp</groupId><artifactId>jsp-api</artifactId><version>2.0</version></dependency><dependency><groupId>javax.servlet</groupId><artifactId>servlet-api</artifactId><version>2.5</version></dependency></dependencies>

3.構(gòu)建的Maven項(xiàng)目的目錄

新構(gòu)建的目錄是不完整的,我們需要在src目錄下新建test目錄,在main目錄下新建java以及resources目錄 這邊是為了與之前學(xué)習(xí)Mybatis一致。webapp下新建一個(gè)META-INF目錄,該目錄下新建一個(gè)context.xml 用來配置JNDI

當(dāng)然僅僅創(chuàng)建文件夾是不行的,我們得更改它們的類型

最終的目錄是下面這樣

上面一些文件和案例是引用上一篇博客的代碼

4.配置context.xml

<?xml version="1.0" encoding="UTF-8" ?> <Context><Resourcename="jdbc/ssmtest"type="javax.sql.DataSource"auth="Container"maxActive="20"maxWait="10000"maxIdle="5"username="root"password="feng10.10"driverClassName="com.mysql.jdbc.Driver"url="jdbc:mysql://localhost:3306/ssmtest"/></Context> 上邊那個(gè)存放的是JNDI的全局?jǐn)?shù)據(jù)源

下面是JNDI的一些屬性

屬性含義
name數(shù)據(jù)源的名稱
type數(shù)據(jù)源類型
auth數(shù)據(jù)源提供者 這里是Tomcat
maxActive最大活動數(shù)
maxWait最大等待時(shí)間 以秒為單位
maxIdle最大空閑數(shù)
username賬號
password密碼
urlurl

5.配置SqlMapConfig.xml

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration><!--typeAliases 是取別名 typeAlias是為type屬性的取一個(gè)alias中的別名--><typeAliases><!-- <typeAlias type="com.test.domain.User" alias="user"></typeAlias>--><!--用于指定要配置別名的包,當(dāng)指定之后,該包下的實(shí)體類都會注冊別名,并且類名就是別名,不再區(qū)分大小寫--><package name="com.test.domain"/></typeAliases><!--配置環(huán)境--><environments default="mysql"><environment id="mysql"><transactionManager type="JDBC"></transactionManager><dataSource type="JNDI"><property name="data_source" value="java:comp/env/jdbc/ssmtest"/></dataSource></environment></environments><mappers><!-- <mapper resource="com/test/Dao/IUserDao.xml"></mapper> --><!-- 這里的package標(biāo)簽是用于指定dao接口的所在的包,當(dāng)指定了之后就不需要再寫mapper及其他的屬性resource 或者 class --><package name="com.test.Dao"/></mappers></configuration>

應(yīng)該不難發(fā)現(xiàn)這上面與一般的mybatis配置不同的地方就在于dataSource標(biāo)簽type屬性設(shè)置為JNDI,property標(biāo)簽的屬性:name設(shè)置為data_source 、value設(shè)置為java:comp/env/xxx/xxx 這邊的xxx對應(yīng)前面JNDI屬性name的值

6.配置index.jsp啟動Tomcat服務(wù)

在webapp目錄的WEB-INF下有一個(gè)index.jsp,配置完Tomcat啟動Tomcat會默認(rèn)訪問index.jsp,我們可以在該jsp中插入java代碼塊。 <%@ page import="java.io.InputStream" %> <%@ page import="org.apache.ibatis.io.Resources" %> <%@ page import="org.apache.ibatis.session.SqlSessionFactory" %> <%@ page import="org.apache.ibatis.session.SqlSessionFactoryBuilder" %> <%@ page import="org.apache.ibatis.session.SqlSession" %> <%@ page import="com.test.Dao.IUserDao" %> <%@ page import="java.util.List" %> <%@ page import="com.test.domain.User" %><%@page language="java" contentType="text/html; UTF-8" pageEncoding="UTF-8" %> <html> <body> <h2>Hello World!</h2> <%InputStream in = Resources.getResourceAsStream("SqlMapConfig.xml");SqlSessionFactory factory=new SqlSessionFactoryBuilder().build(in);SqlSession sqlSession =factory.openSession();IUserDao userDao=sqlSession.getMapper(IUserDao.class);List<User> users=userDao.findAll();for(User user:users){ // System.out.println(user);out.print(user);out.print("<br/>");}%> </body> </html> 代碼塊里的內(nèi)容就是使用Mybatis框架來訪問數(shù)據(jù)庫表,我們將在網(wǎng)頁中獲取到該表的全部信息

好了,寫完這篇博客,情人節(jié)也差不多進(jìn)入尾聲了。

總結(jié)

以上是生活随笔為你收集整理的Mybatis+Tomcat使用JNDI配置数据源入门的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。