SpingBoot(六)thymeleaf模板引擎 thymeleaf模板引擎常见的模板引擎:JSP、Freemarker、Thymeleaf模板引擎原理:模板文件中的动态内容用表达式表示,然后将数据和模板文件一同交给模板引擎渲染,就能得到我们想要的页面SpringBoot不支持JSP,推荐使用ThymeleafThymeleaf语法更简单,功能更强大1. 引入Thymeleaf添加pom依赖<dependency>...
SpringBoot(五)Web开发 Web开发简介创建SpringBoot应用选中我们需要的web模块儿SpringBoot已经默认将这些场景已经配置好了,只需要指定少量的配置就可以让应用运行起来SpringBoot自动配置原理这个场景SpringBoot帮我们配置了什么?能不能修改?xxxxAutoConfiguration:帮我们给容器中自动配置组件;xxxxProperties:配置类来封装配置文件的内容;...
SpringBoot(四)自动配置原理 SpringBoot自动配置原理自动配置原理SpringBoot启动的时候加载主配置类,开启了自动配置功能 @EnableAutoConfiguration@EnableAutoConfiguration的作用:利用EnableAutoConfigurationImportSelector给容器中导入一些组件查看EnableAutoConfigurationImportSele...
SpringBoot(三)SpringBoot配置文件 一、SpringBoot配置文件SpringBoot默认有一个全局配置文件,配置文件名是固定的:application.properties或者application.yml二、YAML(yml)1. 概述yml以数据为中心,比json和xml等更适合做配置文件;使用语法:server: port:8081xml写法:<server> <p...
SpringBoot(二)HelloWorld原理探究 HelloWorld原理探究一.Pom文件1. 父项目<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.9.R...
SpringBoot(一)SpringBoot入门 SpringBoot简介1.SpringBoot是什么SpringBoot用来简化Spring应用开发,约定大于配置,去繁从简,几乎不用编写配置文件就能轻松的创建一个企业级的应用。换句话说SpringBoot就是Spring全家桶2.SpringBoot的优点 快速创建独立运行的Spring项目 SpringBoot集成了大多数主流应用框架 使用嵌入式的Servle...
java面经 1. 搜索服务solr的具体配置先在schema.xml中配置搜索字段需要使用到的域,复制域,动态域,然后在pojo中的各个属性上加上@Filed注解,指明域名称。使用的分词器,以及具体使用方法我使用的是IK Analyzer分词器。首先将IK分词器的jar包拷贝到solr工程的WEB-INF下的lib目录下,然后将停用词词典,扩展词词典,IK分词器的主配置文件拷贝到WEB-INF...
JavaWeb三大组件之过滤器 过滤器什么是过滤器过滤器是JavaWeb三大组件之一,它与Servlet很相似!不它过滤器是用来拦截请求的,而不是处理请求的。当用户请求某个Servlet时,会先执行部署在这个请求上的Filter,如果Filter“放行”,那么会继承执行用户请求的Servlet;如果Filter不“放行”,那么就不会执行用户请求的Servlet。它会在一组资源(jsp、servlet、.css、.h...
JavaWeb三大组件之监听器 监听器什么是监听器:它是一个接口,内容由我们来实现;它需要注册,例如注册在按钮上!监听器中的方法,会在特殊事件发生时被调用!JavaWeb中的监听器ServletContext生命周期监听:ServletContextListener,它有两个方法,一个在出生时调用,一个在死亡时调用;void contextInitialized(ServletContex...
sql查询 单表sql查询最基本查询select 列名 from 表名去重查询:distinct关键字,去除完全重复的行记录(注意:没有改变数据库中的内容)在查询列的前面加上distinct关键字select模糊查询查询学生表中姓王的学生的全部信息select * from student where name like ‘王%’;排序查询按照工资升序查询的方式从emp表中查询所有员工信...
json数据格式 什么是jsonjson是一种数据格式json与编程语言没有关系json的载体是字符串,基本上所有的编程语言都支持json使用json的好处语法简洁基本上所有的语言都提供了相应的方法解析jsonjson格式的字符串转换过后会变成数组或者是对象json的写法对象使用{}包裹属性名必须是字符串类型,必须使用""包裹属性值如果不是数值,也必须使用""包裹例:{ ...
linux基本命令及软件安装 linuxlinux的目录结构etc — 配置文件:在etc下有profile文件是配置环境变量usr — 用户目录,存放用户级的文件home — 存储普通用户的个人文件:每个用户的根目录的存放位置,home下创建每个用户的根目录,例如:用户名是zhangsan:那么在home下就会存在一个zhangsan目录root — 启动Linux时使用的一些核心文件。如操作系统内核、引导程序...
hibernate hibernate是什么框架是什么框架是用来提高效率的封装好了一些功能,我们需要使用这些功能时调用即可,不需要再手动实现。所以框架可以理解成是一个半成品项目,只要懂得如何驾驭这些功能即可hibernate框架是什么hibernate是帮我们完成数据库操作的orm(对象关系映射)框架,属于Dao层。hibernate框架的好处让我们以面向对象的方式操作数据库,甚至不用写sq...
Mybatis MybatisMybatis介绍MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis,实质上Mybatis对ibatis进行一些改进。MyBatis是一个优秀的持久层框架,它对jdbc的操作数据库的过程进行封装,使开发者只需要关注 SQL 本身,而不...
堆栈常见相关问题 堆栈用数组结构实现大小固定的队列和栈用数组结构实现队列结构public class ArrayQueue { private Integer [] arr; private int size; private int first; private int end; //初始化队列 public void ArrayQueue(int i...
典型的贪心问题 # 贪心问题一块金条切成两半,是需要花费和长度数值一样的铜板的。比如长度为20的金条,不管切成长度多大的两半,都要花费20个铜板。一群人想整分整块金条,怎么分最省铜板?例如,给定数组{10,20,30},代表一共三个人,整块金条长度为10+20+30=60.金条要分成10,20,30三个部分。如果,先把长度60的金条分成10和50,花费60再把长度50的金条分成20和30,花费50,一共花费...
算法之矩阵 # 矩阵问题转圈打印矩阵【题目】 给定一个整型矩阵matrix,请按照转圈的方式打印它。例如: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 打印结果为:1,2,3,4,8,12,16,15,14,13,9,5,6,7,11, 10【要求】 额外空间复杂度为O(1)。整体思想:从外圈向内圈逐层打印代码package day03;publ...
数据结构之树相关的问题 # 树实现二叉树的先序、中序、后序遍历,包括递归方式和非递归方式递归方式:略非递归方式先序遍历:先打印头结点,若头结点的右孩子不为空则先将右孩子压栈,然后再看其左孩子是否为空,若不为空将左孩子压栈,然后再将栈顶弹出打印。让头结点等于弹出的栈顶节点,再重复上述过程,直到栈为空为止。中序遍历:先将头结点压栈,若左孩子不为空,则将左孩子压栈,然后再看左孩子的左孩子是否为空,若不为空则将其...
暴力递归和动态规划 # 暴力递归和动态规划求n!的结果思路:要求n!,则要先求出(n-1)!,n*(n-1)! 即为n!的结果。要求(n-1)!,则要先······代码public class Factorial { public static int factorial(int num) { if (num == 1) { return 1; ...