一 整合

由于本人的学过的技术太多太乱了,于是决定一个一个的整合到一个springboot项目里面。

附上自己的github项目地址 https://github.com/247292980/spring-boot

附上汇总博文地址 https://www.cnblogs.com/ydymz/p/9391653.html

以整合功能

spring-boot,FusionChart,thymeleaf,vue,ShardingJdbc,mybatis-generator,微信分享授权,drools,spring-security,spring-jpa,webjars,Aspect,drools-drt,rabbitmq,zookeeper,mongodb,mysql存储过程,前端的延迟加载,netty

这次就来整合下postgresql

二 安装

postgresql了解的主要原因是因为腾讯很多招聘都有要求,那么不管怎么说crud折腾一次是必要的

但是这玩意好像他们都不更新几年了....

安装没什么难的,安装程序点下去就是了

就是有几个坑

1.这里输入框没用户名,用户名在描述里面,而且没高亮等。用户名 postgres,这里我点下去安装成功硬是不知道用户名是什么,然后百度了一番....

2.选环境,具体影响什么我不知道,但是上网看到C是没环境,所以我选了C。

虽然里面有中文的选项,但是既然是程序员,大家都知道中文版是有多坑,所以我第一反应就无视,有成功的话,留言科普下吧。

三 代码

public class PostgresqlConnect {
static String url = "jdbc:postgresql://127.0.0.1:5432/test";
static String usr = "postgres";
static String psd = "123456"; public static void main(String args[]) {
Connection c = null;
Statement stmt = null;
ResultSet rs = null;
try {
Class.forName("org.postgresql.Driver");
c = DriverManager
.getConnection(url,
usr, psd);
System.out.println("Opened database test");
String sql = "";
// stmt = c.createStatement();
// sql = "CREATE TABLE COMPANY " +
// "(ID INT PRIMARY KEY NOT NULL," +
// " NAME TEXT NOT NULL, " +
// " AGE INT NOT NULL, " +
// " ADDRESS CHAR(50), " +
// " SALARY REAL)";
// stmt.executeUpdate(sql);
// System.out.println("CREATE TABLE COMPANY"); // stmt = c.createStatement();
// sql = "INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) "
// + "VALUES (1, 'Paul', 32, 'California', 20000.00 );";
// stmt.executeUpdate(sql);
//
// sql = "INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) "
// + "VALUES (2, 'Allen', 25, 'Texas', 15000.00 );";
// stmt.executeUpdate(sql);
//
// sql = "INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) "
// + "VALUES (3, 'Teddy', 23, 'Norway', 20000.00 );";
// stmt.executeUpdate(sql);
//
// sql = "INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) "
// + "VALUES (4, 'Mark', 25, 'Rich-Mond ', 65000.00 );";
// stmt.executeUpdate(sql);
// System.out.println("insert data end"); // stmt = c.createStatement();
// ResultSet rs = stmt.executeQuery("SELECT * FROM COMPANY;");
// while (rs.next()) {
// int id = rs.getInt("id");
// String name = rs.getString("name");
// int age = rs.getInt("age");
// String address = rs.getString("address");
// float salary = rs.getFloat("salary");
// System.out.println("ID = " + id);
// System.out.println("NAME = " + name);
// System.out.println("AGE = " + age);
// System.out.println("ADDRESS = " + address);
// System.out.println("SALARY = " + salary);
// System.out.println();
// }
// System.out.println("select data end"); stmt = c.createStatement();
sql = "UPDATE COMPANY set SALARY = 21000.00 where ID=1;";
stmt.executeUpdate(sql);
// c.commit(); rs = stmt.executeQuery("SELECT * FROM COMPANY where ID=1;");
while (rs.next()) {
int id = rs.getInt("id");
String name = rs.getString("name");
int age = rs.getInt("age");
String address = rs.getString("address");
float salary = rs.getFloat("salary");
System.out.println("ID = " + id);
System.out.println("NAME = " + name);
System.out.println("AGE = " + age);
System.out.println("ADDRESS = " + address);
System.out.println("SALARY = " + salary);
System.out.println();
}
System.out.println("update data end"); stmt = c.createStatement();
sql = "DELETE from COMPANY where ID=2;";
stmt.executeUpdate(sql); rs = stmt.executeQuery( "SELECT * FROM COMPANY;" );
while ( rs.next() ) {
int id = rs.getInt("id");
String name = rs.getString("name");
int age = rs.getInt("age");
String address = rs.getString("address");
float salary = rs.getFloat("salary");
System.out.println( "ID = " + id );
System.out.println( "NAME = " + name );
System.out.println( "AGE = " + age );
System.out.println( "ADDRESS = " + address );
System.out.println( "SALARY = " + salary );
System.out.println();
}
System.out.println("delete data end"); stmt.close();
c.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}

还是那句话,代码跑不成功,去我项目试一下

四 总结

其实,学这玩意用不了我多少时间,但是思考腾讯为什么用postgresql和mysql花了我不少时间。

我把自己的猜测说一下

早期postgresql性能优于mysql,甚至有博客说是mysql的三倍。但是在mysql 5.5就被追平,5.7反超,所以说腾讯用postgresql是历史原因。

postgresql在多年前就支持json。mysql还没有,那么只要不引入其他支持json的等postgresql还是有一战之力的,但是5.7mysql也支持了...

那么除去性能除去json,腾讯同时使用这两数据库的原因估计就是postgresql在高压环境下性能并没有下降,而myql明显下降。还有各种数据格式的支持。sql编程能力强。

有兴趣的可以看看这个博客,虽然是只有文字没有图像干活 https://blog.csdn.net/u012679583/article/details/78291846

postgresql安装,java简单使用postgresql的更多相关文章

  1. CentOS7下安装并简单设置PostgreSQL笔记

    为什么是PostgreSQL? 在.NET Core诞生之前,微软平台上最常见的开发组件便是.NET Framework + SQL Server了,但是现在.NET Core终于让跨平台部署成为了现 ...

  2. postgresql数据库安装及简单操作

    自从MySQL被Oracle收购以后,PostgreSQL逐渐成为开源关系型数据库的首选. 本文介绍PostgreSQL的安装和基本用法,供初次使用者上手.以下内容基于Debian操作系统,其他操作系 ...

  3. Mac上安装配置和简单使用PostgreSQL(仍然很不懂)

    因为想要使用推荐的rails-template.需要使用postgres.并初始化了一个用户postgres,密码是postgres.( e.g. $ createuser -d postgres ) ...

  4. PostgreSQL安装详细步骤(windows)

    原文地址:http://blog.chinaunix.net/uid-354915-id-3498734.html PostgreSQL安装:一.windows下安装过程安装介质:postgresql ...

  5. PostgreSQL安装详细步骤windows

    PostgreSQL安装:一.windows下安装过程安装介质:postgresql-9.1.3-1-windows.exe(46M),安装过程非常简单,过程如下:1.开始安装: 2.选择程序安装目录 ...

  6. 【转帖】Windows下PostgreSQL安装图解

    Windows下PostgreSQL安装图解     这篇文章主要为大家介绍了如果在Windows下安装PostgreSQL数据库的方法,需要的朋友可以参考下     现在谈起免费数据库,大多数人首先 ...

  7. PostgreSQL安装详细步骤(windows)[转]

    PostgreSQL安装: 一.windows下安装过程 安装介质:postgresql-9.1.3-1-windows.exe(46M),安装过程非常简单,过程如下: 1.开始安装: 2.选择程序安 ...

  8. 2.PostgreSQL安装详细步骤(windows)【转】

    感谢 Junn9527 PostgreSQL安装:一.windows下安装过程安装介质:postgresql-9.1.3-1-windows.exe(46M),安装过程非常简单,过程如下:1.开始安装 ...

  9. Postgresql部署及简单操作

    PostgreSQL是一个功能强大的开源对象关系数据库管理系统(ORDBMS),在开源数据库使用上与MySQL各领风骚.但也有不少人质疑postgresql的未来,正所谓,赞扬或批判一种数据库都必须先 ...

随机推荐

  1. 与input有关的一些操作

    单选 : 通过name指定为一组,只能选择一个  一组一个选项 <input type=" name="sex"/>男 <input type=&quo ...

  2. asp页面重定向

    asp页面重定向 1.当你点击某页面时(没有登录),而此页面需要登录,登录后页面需要定向到你之前操作的页面时 就用到了重定向. 2.login.aspx?redirUrl="重定向的页面地址 ...

  3. HTTP 400 错误 编译器错误消息: CS0016

    问题:运行程序时提示http 400错误 解决方法: 去掉勾 尝试将网页发布到本地IIS上,发现出现以下错误: 编译器错误消息: CS0016 解决编译器错误消息: CS0016:方法如下: 一般都是 ...

  4. 基于http的多进程并发文件服务器

    1 可以掌握的知识点 (1) 线上部署时的守护应用 (2) 常规的文件操作,配置文件读取 (3) 网络编程,端口复用等文件 (4) 多进程知识 2 代码注释如下 test_httpd.h #inclu ...

  5. 使用form 组件写一个用户注册,并用 bootstrap渲染

    需求:使用form组件,写一个用户注册系统,包含用户名, 密码, 确认密码,手机号,性别,爱好,注册.并用bootsrap渲染,成果如下: 首先创建一个django 项目.然后在连接pymysql数据 ...

  6. IQA(图像质量评估)

    图像质量评价(Image Quality Assessment,IQA)是图像处理中的基本技术之一,主要通过对图像进行特性分析研究,然后评估出图像优劣(图像失真程度). 主要的目的是使用合适的评价指标 ...

  7. 功防技术与实践第1.2章,kali初步了解

    20169314 2016-2017-2 <网络攻防实践>/<网络攻击与防范>第2周学习总结 一.教材学习内容总结 1.hacker和cracker的区别 网络攻防分三部分:系 ...

  8. 关于layui弹出层的使用

    Jquery必须大于1.83 layui必须是all,否则不显示 <script src="../js/jquery-1.8.3.min.js"></script ...

  9. Unity 2018中的图形渲染

    https://mp.weixin.qq.com/s?__biz=MzU5MjQ1NTEwOA==&mid=2247490249&idx=1&sn=d86083e33d9884 ...

  10. Openjudge jubeeeeeat

    jubeeeeeat 题目链接 总时间限制:  1000ms 内存限制:  256000kB 描述 众所周知,LZF很喜欢打一个叫Jubeat的游戏.这是个音乐游戏,游戏界面是4×4的方阵,会根据音乐 ...