Java 命名与目录接口(Java Naming and Directory Interface)

==需要使用的包为java.sql&javax.naming包==Mysql

步骤:

  1.配置tomcat的中的context.xml文件

  2.配置web.xml

  3.添加数据库驱动文件 放在tomcat中的lib文件中

  4.进行代码编写,实现查找数据源

  

  1.修改Tomcat/conf/context.xml文件

   
        <!-- 下面是配置JNDI的配置文件 如果需要 请设置name 的是值 -->
    <Resource
    name="myschool"
    auth="Container"
    type="javax.sql.DataSource"
    maxActive="100"
    maxldle="100"
    maxWait="-1"  
    username="root"
    password="cjx"
    driverClassName="com.mysql.jdbc.Driver"
    url="jdbc:mysql://127.0.0.1:3306/myschool"
    />
    <!-- 结束 -->

2.添加数据库驱动文件
把数据库驱动的.jar文件,加入到Tomcat的lib中
3.在应用层配置web.xml文件

<!-- 配置web.xml的文件 用于配置Jndi  -->
    <resource-ref>
          <res-ref-name>myschool</res-ref-name>
          <res-type>javax.sql.DataSource</res-type>
          <res-auth>Container</res-auth>
      </resource-ref>
      <!--  结束 -->
4.访问数据源

package com.bin.jndi;
import java.sql.*;
import java.util.*;
import javax.sql.*;
import javax.naming.*;
public class Base_Dao {
    public  Connection getConnection() throws Exception {//调用此方法返回一个链接对象
        //获取数据源对象
        Context ctx = new  InitialContext();
        //得到数据源对象
        DataSource ds =    (DataSource)ctx.lookup("java:comp/env/myschool");
        //得到Connextion链接对象
        Connection con = ds.getConnection();
        //返回数据
        return con;
    }
    public ArrayList<String> set_s()throws Exception {
        ArrayList<String> list = new ArrayList<String>();
        //获取Connection链接
        Base_Dao base = new Base_Dao();
        Connection con = base.getConnection();
        System.out.println(con);
        //编写sql语句
        String sql = "select * from student";
        //通过链接得到执行者对象
        PreparedStatement pa = con.prepareStatement(sql);
        ResultSet res =    pa.executeQuery();
        //遍历这个结果集
        while(res.next()) {
            list.add(res.getString("StudentNo"));
        }
        return list;
    }
}

关于JNDI技术链接操作数据库-2019.1.10的更多相关文章

  1. Tomcat通过JNDI方式链接MySql数据库

    原文:Tomcat通过JNDI方式链接MySql数据库 拷贝MySQL的JDBC驱动到Tomcat的lib路径下 配置全局数据源或者单个Web应用的局部数据源 局部数据源 在Tomcat的conf/C ...

  2. JDBC数据源(DataSource)数据源技术是Java操作数据库的一个很关键技术,流行的持久化框架都离不开数据源的应用。

    JDBC数据源(DataSource)的简单实现   数据源技术是Java操作数据库的一个很关键技术,流行的持久化框架都离不开数据源的应用. 2.数据源提供了一种简单获取数据库连接的方式,并能在内部通 ...

  3. .NET技术-2.0. 操作数据库-EF

    .NET技术-2.0. 操作数据库-EF 项目参见: EF安装配置 参见: https://www.cnblogs.com/1285026182YUAN/p/10772330.html https:/ ...

  4. ORACLE链接SQLSERVER数据库数据操作函数范例

    ORACLE链接SQLSERVER数据库数据操作函数范例 create or replace function FUN_NAME(LS_DJBH IN varchar2 ,LS_ITM varchar ...

  5. .NET技术-2.0. 操作数据库-Dapper

    .NET技术-2.0. 操作数据库-Dapper 项目参见: 1. 为什么选择Dapper 1) 性能优越: 其实在各大网站上,我们大概都会看到这样的一个对比效果图,在超过500次poco seria ...

  6. java链接并操作数据库

    链接准备 MySQL数据库驱动(连接器).mysql-connector-java-x.x.xx.jar会在MySQL安装时提供,若Mysql是默认安装路径,则连接器在:C:\Program File ...

  7. Android学习之基础知识九 — 数据存储(持久化技术)之使用LitePal操作数据库

    上一节学习了使用SQLiteDatabase来操作SQLite数据库的方法,接下来我们开始接触第一个开源库:LitePal.LitePal是一款开源的Android数据库框架,它采用了对象关系映射(O ...

  8. 使用vbScript 链接SQLserver数据库和基础操作

    使用vbs链接SQLserver数据库 数据库的创建.设计使用 management studio完成 1.本地链接数据库 set oCon = server.createObject("a ...

  9. python下对mysql数据库的链接操作

    参考网址: https://blog.csdn.net/guofeng93/article/details/53994112 https://blog.csdn.net/Chen_Eris/artic ...

随机推荐

  1. JDK动态代理代码示例

    JDK动态代理代码示例 业务接口 实现了业务接口的业务类 实现了InvocationHandler接口的handler代理类 1.业务接口 package com.wzq.demo01; /** * ...

  2. js 正则积累

    //1.验证非空 if (v[j] == "notNull" && $.trim(f.value) == "") { alert(input.a ...

  3. python's os.system&os.spawn

    [python's os.system&os.spawn] os.system会新建一个子shell,在子shell中执行传入的sh脚本.os.spawn用于执行一个bin,产生一个子进程.所 ...

  4. nginx部署(普通用户)

    1. Install Nginx software prerequisites : $ sudo yum install pcre pcre-devel openssl-devel perl gcc ...

  5. ArcEngine调用FeatureToLine工具传参问题

    FeatureToLine工具的in_features参数不能为内存图层,否则会报内存错误,正确的写法如下: FeatureToLine ftrToLine = new FeatureToLine() ...

  6. 转载《Spring AOP中pointcut expression表达式解析 及匹配多个条件》

    原文地址:https://www.cnblogs.com/rainy-shurun/p/5195439.html 原文 Pointcut 是指那些方法需要被执行"AOP",是由&q ...

  7. (转)Java 中关于String的空对象(null) ,空值(empty),空格

    原文出处:Java 中关于String的空对象(null) ,空值(empty),空格 定义 空对象: String s = null; 空对象是指定义一个对象s,但是没有给该对象分配空间,即没有实例 ...

  8. Eclipse下生成.dll动态库及.a静态库使用 for Windows [z]

    以后的主要工作就是做库了,将我们的C或者C++写的接口做成库,给客户端使用,因此有必要知道库的使用和制作方法.主要是在Eclipse下搞了搞,公司用的是Carbide,也差不多.库做好了,用SVN已提 ...

  9. 用Hash Table(哈希散列表)实现统计文本每个单词重复次数(频率)

    哈希表在查找方面有非常大应用价值,本文记录一下利用哈希散列表来统计文本文件中每个单词出现的重复次数,这个需求当然用NLP技术也很容易实现. 一.基本介绍 1.Hash Key值:将每个单词按照字母组成 ...

  10. C# Redis Server分布式缓存编程(一)(转)

    出处:http://www.cnblogs.com/davidgu/p/3262571.html 这篇文章我将介绍如果用最简洁的方式配置Redis Server, 以及如何使用C#和它交互编程 一. ...