LeetCode初级算法之数学问题:412.Fizz Buzz
题目信息
题目地址:https://leetcode-cn.com/problems/fizz-buzz/
写一个程序,输出从 1 到 n 数字的字符串表示。
如果 n 是3的倍数,输出“Fizz”;
如果 n 是5的倍数,输出“Buzz”;
如果 n 同时是3和5的倍数,输出 “FizzBuzz”。
示例:
1234567891011121314151617181920n = 15,返回:[ "1", "2", "Fizz", "4", "Buzz", "Fizz", "7", "8", "Fizz", "Buzz", "11", "Fizz", "13", "14", "FizzBuzz"]
...
SSM整合
1. 需求和步骤分析需求
使用ssm框架完成对 account 表的增删改查操作。
步骤分析
准备数据库和表记录
创建web项目
编写mybatis在ssm环境中可以单独使用
编写spring在ssm环境中可以单独使用
spring整合mybatis
编写springMVC在ssm环境中可以单独使用
spring整合springMVC
2. 环境搭建2.1 准备数据库和表记录123456789CREATE TABLE `account` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(32) DEFAULT NULL, `money` double DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8; insert into `account`(`id`,`name`,`money`) values (1,'tom',1 ...
SpringMVC 进阶
1. ajax异步交互Springmvc默认用MappingJackson2HttpMessageConverter对json数据进行转换,需要加入jackson的包;同时使用 <mvc:annotation-driven />
123456789101112131415<dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.9.8</version></dependency><dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> <version>2.9.8</ve ...
SpringMVC 入门
1. SpringMVC简介1.1 MVC模式MVC是软件工程中的一种软件架构模式,它是一种分离业务逻辑与显示界面的开发思想。
M(model)模型:处理业务逻辑,封装实体
V(view) 视图:展示内容
C(controller)控制器:负责调度分发(1.接收请求、2.调用模型、3.转发到视图)
1.2 SpringMVC概述SpringMVC 是一种基于 Java 的实现 MVC 设计模式的轻量级 Web 框架,属于SpringFrameWork 的后续产品,已经融合在 Spring Web Flow 中。
SpringMVC 已经成为目前最主流的MVC框架之一,并且随着Spring3.0 的发布,全面超越 Struts2,成为最优秀的 MVC 框架。它通过一套注解,让一个简单的 Java 类成为处理请求的控制器,而无须实现任何接口。同时它还支持 RESTful 编程风格的请求。
总结
SpringMVC的框架就是封装了原来Servlet中的共有行为;例如:参数封装,视图转发等。
1.3 SpringMVC快速入门需求客户端发起请求,服务器接收请求,执行逻辑并进行视图跳 ...
Spring JDBCtemplate&声明式事务
1. Spring的JdbcTemplate主要是学习声明是事务,顺便用下Spring的JdbcTemplate来做演示
1.1 JdbcTemplate是什么?JdbcTemplate是spring框架中提供的一个模板对象,是对原始繁琐的Jdbc API对象的简单封装。
核心对象
1JdbcTemplate jdbcTemplate = new JdbcTemplate(DataSource dataSource);
核心方法
12345int update(); //执行增、删、改语句 List<T> query(); //查询多个 T queryForObject(); //查询一个 new BeanPropertyRowMapper<>(); //实现ORM映射封装
举个栗子
查询数据库所有账户信息到Account实体中
1234567891011public class JdbcTemplateTest { @Test public void testFindAll() throws Exception { // 创建核 ...
AOP面向切面
1. 转账案例
先通过一个转账案例在没有AOP的情况下,体验是如何通过基本的代理去实现这样的场景,最后在了解AOP,通过AOP再次实现一次
需求
使用spring框架整合DBUtils技术,实现用户转账功能
1.1 基础功能步骤分析
创建java项目,导入坐标
编写Account实体类
编写AccountDao接口和实现类
编写AccountService接口和实现类
编写spring核心配置文件
编写测试代码
1)创建java项目,导入坐标
1234567891011121314151617181920212223242526272829303132<dependencies> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.47</version> </depen ...
LeetCode初级算法之设计问题:155.最小栈
题目信息
题目地址:https://leetcode-cn.com/problems/min-stack/
设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最小元素的栈。
push(x) —— 将元素 x 推入栈中。
pop() —— 删除栈顶的元素。
top() —— 获取栈顶元素。
getMin() —— 检索栈中的最小元素。
示例:
12345678910111213141516输入:["MinStack","push","push","push","getMin","pop","top","getMin"][[],[-2],[0],[-3],[],[],[],[]]输出:[null,null,null,null,-3,null,0,-2]解释:MinStack minStack = new MinStack();minStack.push(-2);minStack.push(0);minSt ...
Spring IOC控制反转
1. Spring概述1.1 Spring是什么Spring是分层的 Java SE/EE应用 full-stack(全栈式) 轻量级开源框架。
提供了表现层 SpringMVC和持久层 Spring JDBC Template以及 业务层 事务管理等众多的企业级应用技术,还能整合开源世界众多著名的第三方框架和类库,逐渐成为使用最多的Java EE 企业应用开源框架。
两大核心: 以 IOC(Inverse Of Control:控制反转)和 AOP(Aspect Oriented Programming:面向切面编程)为内核。
1.2 Spring发展历程EJB
1997 年,IBM提出了EJB 的思想
1998 年,SUN制定开发标准规范 EJB1.0
1999 年,EJB1.1 发布
2001 年,EJB2.0 发布
2003 年,EJB2.1 发布
2006 年,EJB3.0 发布
Spring
Rod Johnson( Spring 之父)
改变Java世界的大师级人物
2002年编著《Expert one on one J2EE design and d ...