上一篇文章,我们也介绍了访问 MySql 数据库 - Java 中 Spring Boot 使用 JdbcTemplate 访问 MySql 数据库。...本文我们介绍 Java 中 Spring Boot 使用 MyBatis 访问 MySql 数据库。 MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。...MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。...代码演示的环境见文章 - Java 中 Spring Boot 使用 JdbcTemplate 访问 MySql 数据库。...数据库配置信息 在 application.yml 中配置数据库信息如下: # Server server: port: 8081 # DataSource Config spring: datasource
MongoDB 官方提供了 Java 语言的驱动包,利用这些驱动包可使用多种编程方法来连接并操作 MongoDB 数据库。...): > db test 库操作 # 查看当前服务器上的数据库 show dbs; show databases; # 选择名为zdb的数据库(如果没有则创建) use zdb; # 查看当前使用的数据库...# 创建数据库 # use 使用数据库,如果这个数据库不存在就创建 use zdb; # 2....查看数据库名 show databases; # 缩写 show dbs; 集合/表操作 # 查看当前数据库中的集合 show collections; show tables; # 创建一个名为zdb_user...groupId> mongodb-driver-core 3.12.11 Java
Java JSON 本章节我们将为大家介绍如何在 Java 语言中使用 JSON。 类库选择 Java中并没有内置JSON的解析,因此使用JSON需要借助第三方类库。...object.put("list",integers); //null object.put("null",null); System.out.println(object); } 在上述代码中,...integers.forEach(System.out::println); //null System.out.println(object.getString("null")); } 在上例中,...首先从 JSON 格式的字符串中构造一个 JSON 对象,之后依次读取字符串,整数,布尔值以及数组,最后分别打印,打印结果如下: string 2 true 1 2 3 null JSON 对象与字符串的相互转化...由于最近需要使用Gson,而Gson和fastjson在使用上还是有所区别的,所以今天稍微试一下Gson的使用.
1、JDBC技术 java连接数据是通过JDBC技术,JDBC的全称是Java DataBase Connectivity,是一套面向对象的连接数据库的程序接口。...①第一步先加载数据库的驱动程序,可以去官网或者网上找驱动包,代码如下: Class.forName("com.mysql.jdbc.Driver"); ②DriverManager是类用来管理数据库中的所有驱动程序...这里需要注意了,上面的指针是获取行的数据,get方法肯定是用来获取那一列的数据了,比如:getString()方法中的参数可以写成getString(“列名”),又或者是getString(1),它的意思是获取第一列的数据...上面使用到的sql的查询语句,还有剩下的三个增加、删除、修改哦。...好了,看了这篇文章,基本上java连接数据库是没有大问题了。
Java数据库编程中的技巧,Java数据库编程中的技巧 1、java数据库操作基本流程 2、几个常用的重要技巧: 可滚动、更新的记录集 批量更新 事务处理 java数据库操作基本流程:取得数据库连接...- 执行sql语句 - 处理执行结果 - 释放数据库连接 1、取得数据库连接 1)用DriverManager取数据库连接 例子: String className,url,uid,pwd; url =.../env"); DataSource ds = (DataSource) ctx.lookup(jndi); Connection cn = ds.getConnection(); 多用于jsp中 2、...数据库编程中的技巧,Java数据库编程中的技巧 1、java数据库操作基本流程 2、几个常用的重要技巧: 可滚动、更新的记录集 批量更新 事务处理 java数据库操作基本流程:取得数据库连接 - 执行sql...语句 - 处理执行结果 - 释放数据库连接 1、取得数据库连接 1)用DriverManager取数据库连接 例子: String className,url,uid,pwd; url = "jdbc:
今天继续Java的课题,两天没有做任何事情,过了个自在的周末,但是不知道为什么总是有点淡淡的忧桑。 之前游戏服务器的数据源使用的是阿里巴巴的Druid,今天就大概说说数据源,给个实例。...1、什么是数据库连接池 就是一个容器持有多个数据库连接,当程序需要操作数据库的时候直接从池中取出连接,使用完之后再还回去,和线程池一个道理。 2、为什么需要连接池,好处是什么?...3、Druid 阿里开源的数据源,这个也是前公司使用的数据源,Druid能够提供强大的监控和扩展功能,强项在于监控。.../property> true 1、driverClassName 使用的...JDBC驱动的完整有效的Java类名,如连接 mysql com.mysql.cj.jdbc.Driver 2、jdbcUrl 数据库的连接。
数据库管理系统(DataBase Management System,DBMS):指一种操作和管理数据库的大型软件,用于建立、使用和维护数据库,对数据库进行统一管理和控制,以保证数据库的安全性和完整性。...用户通过数据库管理系统访问数据库中的数据。 第二章:常见数据库管理系统 MySQL MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle旗下产品。...数据库名 character set utf8;--把数据库改成utf8字符集 --删 drop drop database 数据库名;--删除数据库 --其他 use 数据库名;--使用数据库 select...database();--查看当前正在使用的数据库 flush privileges;--刷新数据库 /* 操作表 */ --增 create create table 表名(--创建新表 字段名1..."",''或者不使用引号) select e.empno,e.ename from emp as e;--给表起别名,表中的字段也能通过表的别名来调用 /* 条件查询 */ --条件语句 > =
("utf-8"); out.print("alert('您还没有登录,请登录') "); out.flush(); out.close(); } 3、java
java中Locks的使用 之前文章中我们讲到,java中实现同步的方式是使用synchronized block。在java 5中,Locks被引入了,来提供更加灵活的同步控制。...Lock和Synchronized Block的区别 我们在之前的Synchronized Block的文章中讲到了使用Synchronized来实现java的同步。...如果使用Lock API,则可以使用 lockInterruptibly()来中断线程。...StampedLock中的stamped类似乐观锁中的版本的概念,当我们在 StampedLock中调用lock方法的时候,就会返回一个stamp,代表锁当时的状态,在乐观读锁的使用过程中,在读取数据之后...本文的例子可以参考https://github.com/ddean2009/learn-java-concurrency/tree/master/Locks
java中FutureTask的使用 FutureTask简介 FutureTask是java 5引入的一个类,从名字可以看出来FutureTask既是一个Future,又是一个Task。...(); log.info(futureTask.get().toString()); } 本文的例子可参考https://github.com/ddean2009/learn-java-concurrency
java中ThreadLocalRandom的使用 在java中我们通常会需要使用到java.util.Random来便利的生产随机数。...但是Random是线程安全的,如果要在线程环境中的话就有可能产生性能瓶颈。...,方法内部使用了AtomicLong,并调用了它的compareAndSet方法来保证线程安全性。...其实在多个线程环境中,Random根本就需要共享实例,那么该怎么处理呢? 在JDK 7 中引入了一个ThreadLocalRandom的类。...本文的例子可以参考https://github.com/ddean2009/learn-java-concurrency/tree/master/ThreadLocalRandom
之前的文章中我们讲到了ExecutorService,通过ExecutorService我们可以提交一个个的task,并且返回Future,然后通过调用Future.get方法来返回任务的执行结果。...Future> futures = executor.invokeAll(callableTasks); executor.shutdown(); } 上面的例子中,...本文的例子可以参考https://github.com/ddean2009/learn-java-concurrency/tree/master/CompletionService
java中CyclicBarrier的使用 CyclicBarrier是java 5中引入的线程安全的组件。它有一个barrier的概念,主要用来等待所有的线程都执行完毕,然后再去执行特定的操作。...假如我们有很多个线程,每个线程都计算出了一些数据,然后我们需要等待所有的线程都执行完毕,再把各个线程计算出来的数据加起来,的到最终的结果,那么我们就可以使用CyclicBarrier。...(这里和Thread的interrupt()方法保持一致) 如果任何线程正在等待状态中,这时候barrier被重置。...或者在线程调用await方法或者正在等待中,barrier被broken,那么将会抛出BrokenBarrierException。...CyclicBarrier的使用 我们在子线程中生成一个随机的整数队列,当所有的线程都生成完毕之后,我们再将生成的整数全都加起来。看下怎么实现。
有时我们需要对元素进行配对和交换线程的同步点,使用exchange方法 返回其伙伴的对象,这时我们就需要使用线程类中的Exchanger类了, 我通过一个实例 来简单说明一下他的使用方法及其作用...: import java.util.concurrent.Exchanger; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors
Java中get和post的用法请参考:Java中Get和Post的使用 1 提供get/post接口 1.1 Controller @RestController @RequestMapping("/...System.out.println("providePostByMap res:" + res + "\n"); return res; } } 2 调用get/post接口 使用...public Map usePost() { //RestTemplate在postForObject时,用MultiValueMap,不可使用
properties 添加locales 生成properties文件 测试实例 package com.mjoker; import org.junit.Test; import java.util.Locale...; import java.util.ResourceBundle; public class BundleTest { @Test public void testCase1()
join()应该是我们在java中经常会用到的一个方法,它主要是将当前线程置为WAITTING状态,然后等待调用的线程执行完毕或被interrupted。...*/ public final void join() throws InterruptedException { join(0); } 我们看下join是怎么使用的...即使t4中的变量已经变成了0。...所以如果我们需要在这种情况下使用的话,我们需要用到join(),或者其他的同步机制。...本文的例子可以参考https://github.com/ddean2009/learn-java-concurrency/tree/master/join
java中Memcache的使用 一、什么是Memcached? Memcached是danga.com开发的分布式内存对象缓存系统,所谓分布式,意味着它不是本地的,而是基于网络连接完成服务。...Memcached把一些数据通过key=value数据存储到内存中,这样访问更加方便快捷。但是随之而来的问题是如果Memcached关闭或者Memcached的服务器关闭那么所保存的内容也就没有了。...memcached-win64-1.4.4-14.zip 然后解压,在相应的文件夹下执行以下的命令启动memCache: memcached.exe -d install memcached.exe -d start 使用...image.png 三、java下使用Memcached(java客户端程序) maven的依赖如下: 阿里巴巴数据库连接池--> com.alibaba druid
java中DelayQueue的使用 简介 今天给大家介绍一下DelayQueue,DelayQueue是BlockingQueue的一种,所以它是线程安全的,DelayQueue的特点就是插入Queue...中的数据可以按照自定义的delay时间进行排序。...首先要使用DelayQueue,必须自定义一个Delayed对象: @Data public class DelayedUser implements Delayed { private String...我们循环从queue中获取对象。...总结 DelayQueue是一种有奇怪特性的BlockingQueue,可以在需要的时候使用。
java中ThreadLocal的使用 ThreadLocal主要用来为当前线程存储数据,这个数据只有当前线程可以访问。...要存储和获取ThreadLocal中的对象也非常简单,使用get()和set()即可: threadLocalValue.set(1); Integer result = threadLocalValue.get...要想删除ThreadLocal中的存储数据,可以调用: threadLocal.remove(); 下面我通过两个例子的对比,来看一下使用ThreadLocal的好处。...在Map中存储用户数据 我们先看下如果使用全局的Map该怎么用: public class SharedMapWithUserContext implements Runnable { public...如果在ExecutorService环境下,就最好不要使用ThreadLocal,因为在ExecutorService中,线程是不可控的。
领取专属 10元无门槛券
手把手带您无忧上云