- 博客(8)
- 收藏
- 关注
原创 为什么不能通过Executors来获取线程,ThreadPoolExecutor线程池参数讲解
线程池的优势1,线程复用:避免了创建和销毁线程带来的资源消耗2,控制最大的并发量:当大量任务来临时,先进入阻塞队列进行等待3,管理线程:对所创建的线程进行一个集合的管理Java中提供了不同获取线程池的方法//执行长期任务性能好,线程池的大小是固定得到N个 Executors.newFixedThreadPool(int); //一个任务一个任务的执行,一池一线程 Executors.newSingleThreadExecutor(); //执行很多短期异步线程,线程池根据需要创建线程,但在
2020-06-12 09:43:49
392
原创 Ajax如何解决后台无法跳转页面的问题
初想:想在后台程序处理完业务逻辑,然后如果失败返回错误信息,成功则进行跳转,当在跳转时居然不能够跳转页面。问题分析:ajax只是局部刷新,所以不能在后台接口直接进行页面的跳转,只能在ajax的回调函数中进行页面的跳转解决方法:后台 @RequestMapping("/login") @ResponseBody public Login Login(@RequestBody Login login, HttpServletRequest request){ User
2020-06-08 21:25:45
2125
原创 Git从本地库推送到远程库的执行操作
首先先把远程库从Github复制下来(以http为例)git clone http://github.com/xxxxx查询是是否复制下来ll进入要推送的远程库在这里插入代码片cd xxx查询复制下来远程库已有的别名git remote -v添加新的文件到缓冲层git add xxx添加新的文件到本地库git commit -m "描述信息" xxx(文件)将本地库推送到远程库git push -u origin(别名) master...
2020-06-04 17:07:32
173
原创 i++是否线程安全
答案:否对于i++;可通过ideal的反编译工具看i++的汇编代码,你会发现,其实i++对应着4条执行语句取出i的值分配数字1将i进行加i存放入内存多条执行语句则说明执行操作非原子性,可想一个场景假设i = 0;线程-1 从内存读取i,并执行i+1 , i = 1,但当 i 要放置在内存中时,有线程2得到了CPU的执行权,此时线程1由程序计数器记录线程状态线程-2 从内存读取i,此时由于线程 -1 没有将i放置于内存中,导致线程2读取仍是0, 此时线程2进行 i+1,i =1,
2020-06-04 14:33:08
270
原创 SpringBoot2.x自定义异常页面
首先创建一个类ErrorPageConfig@ControllerAdvicepublic class ErrorPageConfig { @ExceptionHandler(Exception.class) ModelAndView handle(Throwable e, Model model){ return new ModelAndView("error"); }}在resources目录下创建templates目录,然后添加自定义的异常页面err
2020-06-03 23:32:32
331
原创 判断对象是否为null,同时对字符串特殊判断
/** * 判断对象是否为空,字符串则添加判断是否等于"" * @param object 需要判断的对象 * @return */ public boolean isNull(Object object){ if(object instanceof String){ return object == null || object.equals(""); }else{ retur
2020-06-03 16:09:13
186
原创 Java入门程序Hello Word
public class Main{public static void main(String[] args){System.out.println(“Hello world”);}}
2020-06-03 15:56:16
173
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅