JDBC配置教程+总结(sql server/mysql/maven)

2023-05-16

Eclipse配置

一、JDBC配置

百度搜索sql server jdbc下载进入微软下载官网:https://docs.microsoft.com/zh-cn/sql/connect/jdbc/download-microsoft-jdbc-driver-for-sql-server?view=sql-server-2017

根据版本选择对应的驱动下载,我这里下载的是6.4版本

语言选择简体中文,然后点击下载

选择gz后缀的压缩包,下载完成后解压缩

可以看见有三个java图标样式的jar文件,分别是jre7,jre8,jre9,打开 eclipse,点击windows--preferences--java--compiler,汉化版就是窗口--首选项--java--已安装的jre,或者直接搜索jdk可以看见eclipse使用的jdk版本。如下图:

根据jdk版本选择对应的jdbc版本,1.8的jdk选择jre8;1.7的jdk选择jre7;然后将对应的jre文件复制粘贴到你的动态网页项目下的web-content下的lib文件夹里面,如下图:

二、SQL SERVER配置

启动sql server,用sql server身份验证登录,默认用户名sa,密码123

如果出现密码错误或者登不上之类的情况,先用windows身份验证登录,然后按下图展开,点击sa进入配置界面;

然后设置sa的密码

设置完成后用sql server登录数据库,能成功登录后将服务器名称改为127.0.0.1,然后继续用sql server登录

如果登录成功就已经配置完成了,如果登录半天没响应或者说是报错了,就说明远程连接没有配置好。

打开SQL Server配置管理器

将SQLSERVER协议的三个协议启动

双击打开TCP/IP协议,将所有的TCP端口改为1433,包括IPALL的TCP端口,然后保证ip地址127.0.0.1唯一,有重复的ip地址项将它改掉或者清空,保存之后重启SQLSERVER服务。

右键点击服务器,选择属性,将下图所示的红框勾选。

保存后,继续右键点击服务器,选择方面,下拉框选择服务器配置,找到下图红框所示信息,将false改为true。

至此就配置好了,然后用ip地址登录就成功了。

三、连接数据库

在项目中新建一个jsp文件,mysql写入以下代码:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8" import = "java.sql.*"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
	try {
		// 加载数据库驱动,注册到驱动管理器
		Class.forName("com.mysql.jdbc.Driver");
		// 数据库连接字符串
		String url = "jdbc:mysql://localhost:3306/mysql";
		// 数据库用户名
		String username = "root";
		// 数据库密码
		String password = "123456";
		// 创建Connection连接
		Connection conn = DriverManager.getConnection(url,username,password);
		// 判断 数据库连接是否为空
		if(conn != null){
			// 输出连接信息
			out.println("数据库连接成功!");
			// 关闭数据库连接
			conn.close();
		}else{
			// 输出连接信息
			out.println("数据库连接失败!");
		}
	} catch (ClassNotFoundException e) {
		e.printStackTrace();
	} catch (SQLException e) {
		e.printStackTrace();
	}
%>

</body>
</html>

sql server写入以下代码:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8" import = "java.sql.*"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
	try {
		// 加载数据库驱动,注册到驱动管理器
		Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
		String url = "jdbc:sqlserver://localhost:1433;DatabaseName=sql;
			String username = "sa";
			String password = "123456";
		// 创建Connection连接
		Connection conn = DriverManager.getConnection(url,username,password);
		// 判断 数据库连接是否为空
		if(conn != null){
			// 输出连接信息
			out.println("数据库连接成功!");
			// 关闭数据库连接
			conn.close();
		}else{
			// 输出连接信息
			out.println("数据库连接失败!");
		}
	} catch (ClassNotFoundException e) {
		e.printStackTrace();
	} catch (SQLException e) {
		e.printStackTrace();
	}
%>

</body>
</html>

其中

String url = "jdbc:mysql://localhost:3306/mysql";
String url = "jdbc:sqlserver://localhost:1433;DatabaseName=sql;

这两句后面的mysql和sql分别是你在MySQL和SQLServer里创建的数据库名称,username和password就是你登录名和密码,修改完成后运行会显示一个网页上面信息显示数据库连接成功,至此就配置好了,后面就可以通过java对数据库进行任意的操作了。

 

IDEA采用Maven配置部署

版本对应关系:IDEA2020.2,Maven3.6.3

首先去https://maven.apache.org/download.cgi下载3.6.3的Maven

下载好之后,解压到本地,为了方便我将名字改成了Maven,同时创建一个repository文件夹,作为本地仓库,用来存放下载的jar包位置。

打开conf下的settings.xml配置文件,添加本地仓库路径,和解压的Maven路径要一致。

<localRepository>E:\Maven.3\repository</localRepository>

采用国外镜像下载jar包速度过于缓慢,更改镜像地址为国内仓库,可以提高下载速度。将mirrors标签进行替换,然后进行保存。

  <mirrors>
 	<mirror>
      <id>alimaven</id>
      <name>aliyun maven</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
      <mirrorOf>central</mirrorOf>
    </mirror>
	
	<mirror>
      <id>repo2</id>
      <mirrorOf>central</mirrorOf>
      <name>Human Readable Name for this Mirror.</name>
      <url>http://repo2.maven.org/maven2/</url>
    </mirror>

    <mirror>
      <id>ui</id>
      <mirrorOf>central</mirrorOf>
      <name>Human Readable Name for this Mirror.</name>
      <url>http://uk.maven.org/maven2/</url>
    </mirror>

  </mirrors>

配置环境变量,创建MAVEN_HOME,并将maven路径填入

在Path中添加变量: 

%MAVEN_HOME%\bin

 

验证Maven安装是否成功,打开cmd,输入mvn -v,显示下图信息配置完成。

在IDEA设置中搜索Maven,进行下图配置。第一个红框为Maven的路径,第二个为settings.xml的路径,第三个为本地仓库的路径,勾选Override并进行替换。 

 找到Maven下的Runner,勾选两个框,并在VM Option中填入:

-DarchetypeCatalog=internal

 新建一个Maven项目,勾选Create from archetype,选择quickstart,首次创建需要联网,出现下列情况安装完成。

 

 

运行App类,显示下列信息就配置成功了

配置mysql JDBC 

在pom文件里添加依赖

    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.39</version>
    </dependency>

我用到了连接池

    <dependency>
      <groupId>com.mchange</groupId>
      <artifactId>c3p0</artifactId>
      <version>0.9.5.2</version>
    </dependency>

 

package com.example;

import com.mchange.v2.c3p0.ComboPooledDataSource;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class JDBCTestDemo {
    public static void  main(String[] args){
        String url = "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC";
        String user = "root";
        String password="123456";
        Connection conn=null;

        //设置数据源DataSource
        ComboPooledDataSource dataSource = new ComboPooledDataSource("mysql");

        try {
            //获取Connection
            Connection connection = dataSource.getConnection();

            //获取Statement对象
            Statement statement = connection.createStatement();

            String sql = "select * from student";
            ResultSet resultSet = statement.executeQuery(sql);

            while (resultSet.next()) {
                String name = resultSet.getString("Sname");
                String sex = resultSet.getString("ssex");
                System.out.println("Sname:" + name+",ssex:"+sex);
            }


        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

 测试结果:

 

IDEA启动加速

随着项目的增大,IDEA的启动速度会越来越慢,经常会出现打开IDEA,一个项目加载时间很长的情况。为了减少等待时间,可以进行IDEA的优化

解决:打开IDEA的安装位置目录,64位电脑找到idea64.exe.vmoptions这个文件进行修改,如果电脑是32位的就修改idea.exe.vmoptions这个文件。

-Xms1024m
-Xms2048m
-XX:ReservedCodeCacheSize=1024m
-XX:+UseConcMarkSweepGC
-XX:SoftRefLRUPolicyMSPerMB=50
-ea
-XX:CICompilerCount=2
-Dsun.io.useCanonPrefixCache=false
-Djdk.http.auth.tunneling.disabledSchemes=""
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-Djdk.attach.allowAttachSelf=true
-Dkotlinx.coroutines.debug=off
-Djdk.module.illegalAccess.silent=true
-Dfile.encoding=UTF-8
-Duser.country=EN
-Duser.language=us

其中第1行-Xms表示idea初始内存大小,该值变大有利于提升程序启动速度与项目打开速度。

其中第2行-Xmx表示idea最大分配内存大小,该值变大有利于提升程序运行性能。

其中第3行-Xms表示保留代码占用内存大小。

可以根据自己电脑的性能给分配合适的内存大小,上面的配置对应我的电脑内存为12G,因此可以多分配一些。

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JDBC配置教程+总结(sql server/mysql/maven) 的相关文章

  • AttributeError:尝试在 python 中运行 sqlalchemy 来管理我的 SQL 数据库时,“Engine”对象没有属性“execute”

    我有以下代码行不断给我一个错误 即引擎对象没有对象执行 我认为我一切都对 但不知道接下来会发生什么 似乎其他人也遇到了这个问题 重新启动他们的笔记本电脑就可以了 我正在使用 Pycharm 并已重新启动但没有任何解决方案 任何帮助是极大的赞
  • Spring Boot 模板未解决

    我正在尝试使用 Spring Boot 和 Thymeleaf 构建一个独立的 Web 应用程序 该应用程序在 IntelliJ IDEA 中运行良好 但我无法单独运行该 jar 显然模板不包括在内 我的项目结构如下 src main ja
  • 什么时候应该使用 XML 而不是 SQL? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • MySQL 获取时间优化

    o我有一个包含 200 万个寄存器的表 但它很快就会增长得更多 基本上 该表包含具有相应描述符的图像的兴趣点 当我尝试执行选择在空间上靠近查询点的点的查询时 总执行时间花费太长 更准确地说 持续时间 获取 0 484 秒 27 441 秒
  • 如何查询多个链接服务器?

    链接一些 SQL Server 2008 服务器 实例后 我想对这些服务器进行更通用的查询 我知道我必须像这样指定查询的命运 select from SRV INSTANCE dbname dbo foo 但是 我会针对多个链接服务器运行此
  • 使用 cfchart 标签在单个饼图中显示多个查询的数据

    请考虑以下代码 现在我的代码中有以下代码 cfm页面内的 tag DataSource xx xx x xx Name of the database sgemail Name of the relevant column event vc
  • 有很多数据库视图可以吗?

    我很少 每月 每季度 使用 Microsoft SQL Server 2005 数据库视图生成数百份 Crystal Reports 报告 在我不读取这些视图的所有时间里 这些视图是否会浪费 CPU 周期和 RAM 因为我很少从视图中读取数
  • Mac OS X Yosemite/El Capitan 上自动启动 MySQL 服务器

    我想在启动时自动启动 MySQL 服务器 这在小牛队是可能的 但在优胜美地似乎不起作用 edit 似乎这也适用于 El Capitan dcc 非常接近 这是 MySQL 在 Yosemite 上再次自动启动的方式 The com mysq
  • 使用 Hibernate 和 MySQL、全局和本地进行 Spring 事务管理

    我正在使用 MySQL Server 5 1 Spring 3 0 5 和 Hibernate 3 6 开发 Web 应用程序 我使用 Springs 事务管理 我是新手 所以如果我问一个容易回答的问题 请耐心等待 1 我读到了有关全局 x
  • grails/mysql 时区更改

    完成更改应用程序时区的最佳方法是什么 在我看来 必须发生以下情况 服务器 TZ 已被系统管理员更改 mysql必须重新启动 数据库中每个基于时间的列都必须使用convert tz 或等效方法更新所有值 因此 要么必须编写一个 mysql 脚
  • mysql 在 sum() 函数上使用 concat,例如 concat(sum(col1),"%")

    我正在尝试合并多个查询 但其中一个查询使用 sum 当我尝试在此列上应用 concat 时 我得到不需要的 blob 结果 我如何在聚合列上应用 concat 和 union 我期待这个结果 SELECT row 1 col1 UNION
  • Drupal 视图 - 自定义/修改 SQL

    我遇到了 配置文件复选框 模块的问题 该模块存储以逗号分隔的自定义配置文件字段 问题是我是否创建一个视图来按值过滤 SQL 结果最终是这样的 AND profile values profile interests value in Bus
  • 如何查找列中未使用的ID? [复制]

    这个问题在这里已经有答案了 可能的重复 SQL查询查找丢失的序列号 https stackoverflow com questions 1057389 sql query to find missing sequence numbers 我
  • 如何避免这两个 SQL 语句之间出现死锁?

    我有两个存储过程在单独的线程中运行 在 SQL Server 2005 上运行 一个过程将新行插入到一组表中 另一个过程从同一组表中删除旧数据 这些过程在表上遇到了死锁DLevel and Model 这是架构 source barrams
  • 使用 JDBC 连接到 PostgreSql 的本地实例

    我在 Linux 机器上有一个正在运行的 PostgreSql 本地实例 当我使用psql来自 shell 的命令我成功登录 没有任何问题 我需要通过 JDBC 连接到 PostgreSql 但我不知道我到底应该传递什么url参数为Driv
  • 按每月时间为用户标记标签

    数据源 User ID Visit Date 1 2020 01 01 12 29 15 1 2020 01 02 12 30 11 1 2020 04 01 12 31 01 2 2020 05 01 12 31 14 Problem 我
  • 数据库中的持久日期不等于检索日期

    我有一个具有 Date 属性的简单实体类 此属性对应于 MySQL 日期时间列 Entity public class Entity Column name start date Temporal TemporalType TIMESTAM
  • 选定的非聚合值必须是关联组的一部分

    我在 Teradata 中有两个表 Table A 和 Table B 它们之间是 LEFT JOIN 之后我将创建 SELECT 语句 其中包含两个表中的属性 SELECT attribute 1 attribute 2 attribut
  • 无需 cron 在后台发送邮件

    我想知道是否有一种方法可以运行 PHP 循环 以便在后台向订阅者发送几百封电子邮件 我的目标是格式化新闻通讯 单击发送 然后关闭浏览器或更改页面 当然 发送电子邮件的实际过程将在后台运行 不会因浏览器关闭而中断 我知道这可以通过 cron
  • 如何使用MySqlCommand和prepare语句进行多行插入?(#C)

    Mysql 给出了如何使用准备语句和 NET 插入行的示例 http dev mysql com doc refman 5 5 en connector net programming prepared html http dev mysq

随机推荐