精华内容
下载资源
问答
  • 图书管理系统(java大作业,可连接多种数据库,cs结构的),做大作业的时候改的。
  • 数据库连接
    • java数据库连接池
    • 一般来说,Java应用程序访问数据库的过程是:   ①装载数据库驱动程序;   ②通过jdbc建立数据库连接;   ③访问数据库,执行sql语句;

      程序开发过程中,存在很多问题:
      首先,每一次web请求都要建立一次数据库连接。建立连接是一个费时的活动,每次都得花费0.05s~1s的时间,而且系统还要分配内存资源。这个时间对于一次或几次数据库操作,或许感觉不出系统有多大的开销。
      可是对于现在的web应用,尤其是大型电子商务网站,同时有几百人甚至几千人在线是很正常的事。在这种情况下,频繁的进行数据库连接操作势必占用很多的系统资源,网站的响应速度必定下降,严重的甚至会造成服务器的崩溃。不是危言耸听,这就是制约某些电子商务网站发展的技术瓶颈问题。其次,对于每一次数据库连接,使用完后都得断开。否则,如果程序出现异常而未能关闭,将会导致数据库系统中的内存泄漏,最终将不得不重启数据库

      通过上面的分析,我们可以看出来,“数据库连接”是一种稀缺的资源,为了保障网站的正常使用,应该对其进行妥善管理。其实我们查询完数据库后,如果不关闭连接,而是暂时存放起来,当别人使用时,把这个连接给他们使用。就避免了一次建立数据库连接和断开的操作时间消耗。
      

      数据库连接池的基本思想:就是为数据库连接建立一个“缓冲池”。预先在缓冲池中放入一定数量的连接,当需要建立数据库连接时,只需从“缓冲池”中取出一个,使用完毕之后再放回去。我们可以通过设定连接池最大连接数来防止系统无尽的与数据库连接

      创建数据库连接池大概有3个步骤: ① 创建ConnectionPool实例,并初始化创建10个连接,保存在Vector中(线程安全) ②
      实现getConnection()从连接库中获取一个可用的连接 ③ returnConnection(conn)
      提供将连接放回连接池中方法

    这里写图片描述

    这里写图片描述

    这里写图片描述

    这里写图片描述

    这里写图片描述

    这里写图片描述

    这里写图片描述


    1、配置Tomcat的conf/context.xml

    展开全文
  • java大作业,附源码,sqlserver数据库,报告一条龙服务,包你满意 下载链接:点我下载 登入模块功能实现 管理员模块功能介绍 1.查询图书 2.借阅图书 3.归还图书 4.删除图书 5.添加图书 6.删除用户 7.查询用户 ...

    java大作业,附源码,sqlserver数据库,报告一条龙服务,包你满意
    下载链接:点我下载
    登入模块功能实现
    在这里插入图片描述
    管理员模块功能介绍
    1.查询图书
    2.借阅图书
    3.归还图书
    4.删除图书
    5.添加图书
    6.删除用户
    7.查询用户
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    用户模块功能介绍
    1.查询图书
    2.借阅图书
    3.归还图书
    4.注册
    在这里插入图片描述

    数据库表的设计
    1.admin表

    在这里插入图片描述
    2.reader表

    在这里插入图片描述
    3.book表

    在这里插入图片描述
    4.book_information表
    在这里插入图片描述
    部分代码展示

    /*
    	 * 登录事件处理
    	 */
    	private int adminLogin(ActionEvent e)  {
    		String userName = this.user_name.getText();
    		String password = new String(this.user_password.getPassword());//获取密码
    		//从一个类的函数中得到一个成员变量,传输到另一个类中进行使用
    		QueryBookInterface.setAdminId(userName);
    		//提示框
    		if(StringNull.isEmpty(userName)) {
    			JOptionPane.showMessageDialog(null, "管理员名不能为空!");
    			return 0;
    		}
    		if(StringNull.isEmpty(password)) {
    			JOptionPane.showMessageDialog(null, "密码不能为空!");
    			return 0;
    		}
    		Admin admin = new Admin(userName,password);
    		Connection con =null;
    		try {
    		con = conutil.loding();//连接数据库
    		Admin curreatAdmin= adminDao.login(con, admin);
    		
    		if(curreatAdmin!=null) {
    			//提示框
    			JOptionPane.showMessageDialog(null, "管理员登陆成功!");
    			return 1;
    		}else {
    			JOptionPane.showMessageDialog(null, "管理员名或者密码错误!");
    			return 0;
    		}
    		}catch(Exception e1){
    			e1.printStackTrace();
    			return 0;
    		}finally {
    			  try {
    				conutil.closeCon(con);
    			} catch (Exception e2) {
    				e2.printStackTrace();
    			}
    		}
    	}
    	/*
    	 * 
    	 */
    	private int userLogin(ActionEvent e)  {
    		String userName1 = this.user_name.getText();
    		String password1 = new String(this.user_password.getPassword());//获取密码
    		//从一个类的函数中得到一个成员变量,传输到另一个类中进行使用
    		 QueryBookInterface.setReaderId(userName1);
    		//提示框
    		if(StringNull.isEmpty(userName1)) {
    			JOptionPane.showMessageDialog(null, "用户名不能为空!");
    			return 0;
    		}
    		if(StringNull.isEmpty(password1)) {
    			JOptionPane.showMessageDialog(null, "密码不能为空!");
    			return 0;
    		}
    		Reader reader =new Reader(userName1,password1);
    		Connection con =null;
    		try {
    		con = conutil.loding();//连接数据库
    		Reader curreatReader= readerDao.login(con, reader);
    		
    		if(curreatReader!=null) {
    			//提示框
    			JOptionPane.showMessageDialog(null, "登陆成功!");
    			return 1;
    		}else {
    			
    			JOptionPane.showMessageDialog(null, "用户名或者密码错误!");
    			return 0;
    		}
    		}catch(Exception e1){
    			e1.printStackTrace();
    			return 0;
    		}finally {
    			  try {
    				conutil.closeCon(con);
    			} catch (Exception e2) {
    				e2.printStackTrace();
    			}
    		}
    	}
    
    public ResultSet query(Connection con,Book book)throws Exception{
    		ResultSet resultUser = null;
    		StringBuffer sql = new StringBuffer("select * from book");
    		
    		//数据库模糊查询
    		if(StringNull.isNotEmpty(book.getBook_name())) {
    			sql.append(" and book_name like '%"+book.getBook_name()+"%'");
    		}
    		 
    		if(StringNull.isNotEmpty(book.getBook_writer())) {
    			sql.append(" and book_writer like '%"+book.getBook_writer()+"%'");
    		}
    		
    		if(StringNull.isNotEmpty(book.getBook_publish())) {
    			sql.append(" and book_publish like '%"+book.getBook_publish()+"%'");
    		}
    		
    		PreparedStatement pstmt = (PreparedStatement)con.prepareStatement(sql.toString().replaceFirst("and", "where"));
    		return pstmt.executeQuery(); 
    	}
    	/**
    	 * 查询图书
    	 */
    	public ResultSet query2(Connection con,Book book)throws Exception{
    		ResultSet resultUser = null;
    		String sql = "select * from book where book_id=?";
    		PreparedStatement pstmt = (PreparedStatement)con.prepareStatement(sql);
    		
    		pstmt.setInt(1, book.getBook_id());
    		
    		return pstmt.executeQuery();
    	}
    
    /**
    	 *  借书
    	 */
    	private void borrowBook() {
    		String bookId = this.book_RBidTxt.getText();
    		String bookName = this.book_RBnameTxt.getText();
    		String bookPublish = this.book_RBpublishTxt.getText();
    		String bookWriter = this.book_RBwriterTxt.getText();
    		String bookStatus = this.book_RBstatusTxt.getText();
    		
    		if(StringNull.isEmpty(bookId)) {
    			JOptionPane.showMessageDialog(null, "图书信息不能为空!");
    			return;
    		}
    		
    		if(bookStatus.equals("1")) {
    			JOptionPane.showMessageDialog(null, "该图书已被借走了!");
    			return;
    		}
    		
    		Connection con = null;
    		try {
    			con = conutil.loding();
    			
    			BookInformation bi;
    			if(StringNull.isNotEmpty(readerName)) {
    				bi = new BookInformation(Integer.parseInt(bookId), readerName, null, null, "1");//读者
    			}else {
    				bi = new BookInformation(Integer.parseInt(bookId), adminName, null, null, "1");//管理员
    			}
    			
    			Book book =new Book(Integer.parseInt(bookId), bookName, bookWriter, bookPublish, "1");
    			
    			int find = bookInformationDao.add(con, bi);
    			int flag = bookDao.update(con, book);
    			if(1 != find ||1 != flag) {
    				JOptionPane.showMessageDialog(null, "借阅失败!");
    				return;
    			}else {
    				JOptionPane.showMessageDialog(null, "借阅成功!");
    				return;
    			}
    			
    		} catch (Exception e) {
    			e.printStackTrace();
    			JOptionPane.showMessageDialog(null, "借阅失败!");
    			return ;
    		}finally {
    			try {
    				conutil.closeCon(con);
    			} catch (Exception e) {
    				e.printStackTrace();
    			}
    		}
    		
    	}
    

    觉得不错的可以前往下载支持一下下
    点我下载
    无积分下载可私信我
    可有偿给源码,可有偿帮写大作业

    展开全文
  • Java连接数据库

    2016-05-10 21:45:05
    因为写的大作业经常用到数据库连接 所以自己写了个数据库连接的类 package DB_Link_info; /* * 数据库链接信息 */ public class DB_link_Info { public static final String driverName = ...

    因为写的大作业经常用到数据库连接 所以自己写了个数据库连接的类

    package DB_Link_info;
    /*
     * 数据库链接信息
     */
    public class DB_link_Info {
    	public static final String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
    	public static final String dbURL = "jdbc:sqlserver://localhost:1433;DatabaseName=Store+_DB";
    	public static final String userName="sa";
    	public static final String userPwd="729757710";
    }

    数据库链接类

    package DB_Link_info;
    
    import java.sql.*;
    
    public class DB_Link {
    	public Statement sta;
    	public ResultSet rs;
    	public Connection con;
    	public String sql;
    	public DB_Link() throws Exception{
    		Class.forName(DB_link_Info.driverName);                                         
            con=DriverManager.getConnection(DB_link_Info.dbURL,DB_link_Info.userName,DB_link_Info.userPwd);
            sta=con.createStatement();
    	}
    	public void close() throws Exception{
    		if(rs!=null)rs.close();                                                                       
    		if(sta!=null)sta.close();
    	}
    	public void setSQL(String sql){this.sql=sql;}
    	public String getSQL(){return this.sql;}
    	public ResultSet getRS(){
    		ResultSet rs = null;
    		try {
    			rs = sta.executeQuery(sql);
    		} catch (SQLException e) {
    		// TODO Auto-generated catch block
    		System.out.print("SQL语言错误");
    		}
    		return rs;
    	}
    	public ResultSetMetaData getRSMD(){
    		ResultSetMetaData rsmd = null;
    		try {
    			rsmd = rs.getMetaData();
    		} catch (SQLException e) {
    			// TODO Auto-generated catch block
    			System.out.print("获取数据结果集错误");
    		}
    		return rsmd;
    	}
    	public void execQuery(){
    		try {
    			sta.executeQuery(sql);
    		} catch (SQLException e) {
    			// TODO Auto-generated catch block
    			System.out.print("插入或跟新失败");
    		}
    	}
    }
    比如说在登录界面 需要连接数据库 我是这样做的 先定义一个成员变量DB_Link

    private DB_Link dbl = new DB_Link();
    然后需要的时候 先设置DB_Link的成员变量sql 再执行该类的其它方法

    dbl.setSQL("select * from logon_users_info");
    ResultSet rs=dbl.getRS();
    最后用该类的关闭方法关闭连接

    dbl.close();





    展开全文
  • 说明: 1.首先在myeclipse创建Web Project,然后创建DBHelp类。 2.类里面添加方法getConn(),方法返回值为Connection来自java.sql.Connection包中。...4.程序运行先要打开mysql创建数据库。 package com.veryedu....

    说明:
    1.首先在myeclipse创建Web Project,然后创建DBHelp类。
    2.类里面添加方法getConn(),方法返回值为Connection来自java.sql.Connection包中。
    3.我用的是mysql所以导入mysql-connector-java-5.1.28.jar。
    4.程序运行先要打开mysql创建数据库。

    package com.veryedu.b2c.util;
    import java.sql.Connection;
    import java.sql.DriverManager;
    /* JDBC 连接数据库操作
     * services.msc
     */
    public class DBHelp {
        public static Connection getConn(){
            Connection conn=null;
            try{            
                Class.forName("com.mysql.jdbc.Driver");//返回与给定的字符串名称相关联类或接口的Class对象。
                String url="jdbc:mysql://localhost:3306/mydb?useUnicode=true&characterEncoding=utf8&autoReconnect=true&rewriteBatchedStatements=TRUE";//JDBC 连接数据库
                conn=DriverManager.getConnection(url,"root","123456");//获得数据库连接
                System.out.println("获得数据库连接成功");
            }catch(Exception ex){
                ex.printStackTrace();
            }
            return  conn;
        }
        //主方法测试
        public static void main(String[] args) {
            DBHelp.getConn();
        }
    }
    
    展开全文
  • 最近在做javaee的作业,按照黑马程序员《JAVA EE企业级应用开发教程》第四章的代码敲完之后呢,发现出现了一堆错误。本来以为是代码写错了,但是找了好久,最后发现是mysql 8.0版本的一些坑。下面附上我的一些解决...
  • java连接阿里云里的oracle...之前的坑在此不做赘述,在此主要写本地连接数据库的步骤 “jdbc:oracle:thin:@ip地址:端口号:sid”,“账号”,“密码” ip地址填写阿里云开放的公网ip: The Network Adapter could n...
  • java通过jdbc连接Oracle通过数据库连接池实现增删改查
  • (JDBC学习)Java连接Mysql数据库,实现初始登录注册作者想说的话代码要求描述涉及类的主要作用描述#JDBCUtils类#JDBC.properties文件#jdbc_test类运行结果 作者想说的话 本篇作品为自己为了学业所做作业,若有问题...
  • 数据库作业,采用JAVA语言编写,还有数据库是SQL数据库。。。。代码大全
  • 从今天开始进行金仓数据库大作业。首先声明,金仓数据库与现在主流的Oracle、MySQL、SQL Server等数据库相比,还是有差距的,所以,如果不是特别需要使用金仓数据库去完成一些工作或者特意练习自己修正Bug的能力,...
  • java编写的数据库大作业,小区物业管理,需要连接MySQL数据库。
  • 采购管理系统是一款集公司各单位所需设备统计、供应商信息管理、采购订单信息管理功能为一体的信息系统。其在采购管理中操作方便、功能齐全,被广泛使用。...用JDBC驱动实现前台Java与后台SOL数据库连接
  • java用户登录界面并连接数据库(教师工资查询) 环境 语言:Java;数据库:MySql;环境:JDK8+Eclipse 步骤 实现该教师工资表管理所设计的类和文件 (1)db.properties:数据库配置文件,文件内容是"键=值"的格式,...
  • 2.掌握Java操作MySQL数据库的方法。 【目标】 目标1:MySQL数据库的基本操作,包括MySQL的安装、创建数据库、数据表、增删改查操作(80分)。 目标2:Java操作MySQL数据库,包括基本步骤和具体的编码实现(90分)。...
  • 这几天逼着交Java,借鉴各位师傅的做出来这么个简陋的东西,各位师傅不要笑我。(学都没有学过Java的我,QAQ~) 下面针对的都是SQL Server系列的连接,如果你使用MySQL那么不必看关于连接数据库的介绍。 ...
  • 第二个作业:MySQL数据库Java操作MySQL数据库 【目的】 1.掌握MySQL数据库的使用方法。 2.掌握Java操作MySQL数据库的方法。 【目标】 目标1:MySQL数据库的基本操作,包括MySQL的安装、创建数据库...
  • JAVA连接SQL数据库,并以表格形式输出所有列
  • 2.掌握Java操作MySQL数据库的方法。 【目标】 目标1:MySQL数据库的基本操作,包括MySQL的安装、创建数据库、数据表、增删改查操作(80分)。 目标2:Java操作MySQL数据库,包括基本步骤和具体的编码实现(90分...
  • 这个程序是参考张桂珠的《java实用技术书》上的代码,用它交我java作业实在是有点小题大做了,但是本着做就要做好的原则,还是原原本本的全都做了一遍,这里面有一些错误,我还没有改正过来,这里可以清晰看见我...
  • JAVA数据库连接一般方法

    千次阅读 2017-03-22 20:09:34
    package day01; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException;... * JDBC:java数据库链接 使用JDBC连接数据库的基本流程(此
  • jsp大作业总结(1)--连接数据库

    千次阅读 2013-06-12 20:14:46
    平台是myeclips10 tomacate6.5 mysql5.5 ...import java.sql.*; public class DBConnect {  public static Connection getConnection(){  String url = "jdbc:mysql://localhost:3306/test";  String user = "r
  • 2.掌握Java操作MySQL数据库的方法。 【目标】 目标1:MySQL数据库的基本操作,包括MySQL的安装、创建数据库、数据表、增删改查操作(80分)。 目标2:Java操作MySQL数据库,包括基本步骤和具体的编码实现(90分)...
  • java大作业回顾

    千次阅读 2017-12-24 10:58:45
    Java大作业回顾——公交线路管理系统学了半学期的java。(因为之前学过c++所以感觉java比c++好上手多了。)写作业期间,也是查了不少资料,为了方便像我这样的新手理解,分享一下当时自己在写时的错误,希望大家少走...
  • 2.掌握Java操作MySQL数据库的方法。 【目标】 目标1:MySQL数据库的基本操作,包括MySQL的安装、创建数据库、数据表、增删改查操作(80分)。 目标2:Java操作MySQL数据库,包括基本步骤和具体的编码实现(90分...
  • 2.掌握Java操作MySQL数据库的方法。 【目标】 目标1:MySQL数据库的基本操作,包括MySQL的安装、创建数据库、数据表、增删改查操作(80分)。 目标2:Java操作MySQL数据库,包括基本步骤和具体的编码实现(90...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 30,533
精华内容 12,213
关键字:

java大作业连接数据库

java 订阅