一 整合

由于本人的学过的技术太多太乱了,于是决定一个一个的整合到一个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. JavaScript之JMap

    在JavaScript中我们利用function类定义类在类的内部我们用var 定义私有变量 私有函数在类的内部我们用this 定义公有变量(1)定义一个类 function JMap() { var ...

  2. linux日常管理-rsync格式

    rsync支持网络到本地,本地到网络,本地到本地拷贝数据,支持增量拷贝.用作备份. man rsync rsync的两大用法.一种是通过shell,一种是deamon. shell  pull远程机器 ...

  3. struts 文件上传示例

    import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io ...

  4. Zabbix_proxy的架设

    一.安装zabbix-proxy与导入数据库 1. 安装 zabbix-server $ sudo rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/ ...

  5. IO系列之File

    1 File类 1.1 目录列表器 在这里我主要是参考Think in Java的内容从而做的一些总结以及扩展.Java中的IO流的设计应该说是Java中最经典的,最学院式的设计,包括它的整体架构设计 ...

  6. ubuntu安装配置ApachePhpMysql

    1.安装之前先sudo源 sudo apt update 2.安装Apache2 sudo apt install apache2 3.更改默认目录: vi /etc/apache2/apache2. ...

  7. Learning Python 003 缩进

    Python 缩进 Python的代码中不使用{}大括号来来表示一个代码块,而是使用缩进方式.像下面这段代码: # print absolute value of an integer: a = 10 ...

  8. Struts2学习第二课 Struts2概述

    Struts2是一个用来开发MVC应用程序的框架,它提供了Web应用程序开发过程中的一些常见问题飞解决方案: -对来自用户的输入数据进行合法性验证 -统一的布局 -可扩展性 -国际化和本地化 -支持A ...

  9. LeetCode: 455 Assign Cookies(easy)

    题目: Assume you are an awesome parent and want to give your children some cookies. But, you should gi ...

  10. Windows10安装node.js,vue.js以及创建第一个vue.js项目

    [工具官网] Node.js : http://nodejs.cn/ 淘宝NPM: https://npm.taobao.org/ 一.安装环境 1.本机系统:Windows 10 Pro(64位)2 ...