- 博客(13)
- 收藏
- 关注
转载 反转字符串中的单词
给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。对于java而言,String是不可变字符数组,所以无法避免空间的开销顺带讲讲原因:源码如下public final class String implements java.io.Serializable, Comparable<String>, CharSequence { /** The value is used for character storage. */ pri
2021-11-11 10:38:40 223
原创 使用git
git status :查看当前状态git add . :再查看 git statusgit commit -m “提交说明信息”git push问题:我出现了git push报错:The current branch master has no upstream branch原因:没有将本地的分支与远程仓库的分支进行关联通过git branch查看本地分支只有master通过git branch -a查看远程分支,有master和remotes/origin/master两个这时由于
2021-05-18 11:34:54 90
原创 线程同步
线程同步:多个线程操作同一个资源并发:同一个对象被多个线程同时操作线程不安全例子:package com.annan.syn;import java.util.ArrayList;import java.util.List;//线程不安全的集合public class UnsafeList { public static void main(String[] args) { List<String> list = new ArrayList<S
2021-05-15 21:51:32 104
原创 线程状态
线程停止在这里插入代码片package com.annan.state;//测试stop//1.建议线程正常停止-->利用次数,不建议死循环//2.建议使用标志位-->设置一个标志位//3.不要使用stop或destro等过时方法public class TestStop implements Runnable{ //1.设置一个标识位 private boolean flag = true; @Override public void run()
2021-05-15 19:11:34 96
原创 lamda表达式
理解Functional Interface(函数式接口)是学习java8 lambda表达式的关键所在函数式接口的定义:1.任何接口,如果只包含唯一一个抽象方法,那么它就是一个函数式接口。publicinterface Runnable{public abstract void run();}2.对于函数式接口,我们可以通过lambda表达式来创建该接口的对象package com.annan.TestLambda;//推导lambda表达式public class Test1 {
2021-05-15 15:24:45 85
原创 静态代理
package com.annan.demo2;//静态代理模式总结//真是对象和代理对象都要实现同一个接口//代理对象要代理真实角色//好处:代理对象可以做很多真实对象做不了的事,真实对象可以专注自己的事情public class statciproxy { public static void main(String[] args) { WeddingCompany weddingCompany = new WeddingCompany(new You
2021-05-14 20:42:27 70
原创 callable接口实现多线程
package com.annan.demo01;import org.apache.commons.io.FileUtils;import java.io.File;import java.io.IOException;import java.net.MalformedURLException;import java.net.URL;import java.util.concurrent.*;//线程创建方式三:实现callable接口//好处:1.可以定义返回值 2.可以抛出异常
2021-05-14 20:00:15 262
原创 多线程并发问题
初始多线程并发问题package com.annan.demo01;//多个线程同时操作同一个对象//买火车票的例子//发现问题:多个线程操作同一资源的情况下,线程不安全public class TestThread4 implements Runnable{ private int ticketNums = 10; public void run() { while (true){ if (ticketNums<=0){
2021-05-14 17:55:21 136
原创 多线程
创建线程方式方式一package com.annan.demo01;//创建线程方式一:继承Thread类,重写run()方法,调用start开启线程//总结:线程开启不一定立即执行,由cpu调度public class TestThread1 extends Thread{ @Override public void run() { //run方法线程体 for (int i = 0; i < 20; i++) {
2021-05-14 17:05:33 95
原创 spring-声明式事务
声明式事务1.回顾事务把一组业务当成一个业务来做;要么都成功要么都失败2.事务在项目开发中,十分的重要,涉及到数据的一致性问题,不能马虎3.确保完整性和一致性事务ACID原则:1.原子性2.一致性3.隔离性多个业务可能操作同一个资源,防止数据损坏4.持久性事务一旦提交,无论系统发生什么问题,结果都不会再被影响,被持久化的写到存储器中2.spring中的事务管理声明式事务:AOP编程式事务:需要在代码中进行事务的管理要开启 Spring 的事务处理功能,在 Spring 的配置文
2021-05-13 16:01:31 88
原创 整合Mybatis方式二
通过继承SqlSessionDaoSupportUserMapperImpl:可通过getSqlSession()直接获得一个templatepackage com.annan.mapper;import com.annan.pojo.User;import org.apache.ibatis.session.SqlSession;import org.mybatis.spring.support.SqlSessionDaoSupport;import java.util.List;p
2021-05-12 21:22:33 65
原创 整合mybatis方式一:mybatis-spring
步骤1.编写数据源配置spring-dao.xml<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"
2021-05-12 17:27:07 110
原创 Spring-mybatis
Mybatis - Spring导包: <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> </dependency>
2021-05-12 15:48:45 85
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人