分享知识-快乐自己:什么是MVC】的更多相关文章

1.什么是mvc: Model View Controller,是模型-视图-控制器的缩写,一种软件设计典范,用一种业务逻辑.数据.界面显示分离的方法组织代码,将业务逻辑聚集到一个组件里,在改进和个性化定制界面的及用户交互的时候,不需要重新编写业务逻辑. mvc用于映射传统的输入.处理.输出功能在一个逻辑的图形用户界面的结构中. mvc就是类似三层的一种架构,主要采用封装(分层)的思想,来降低耦合度,从而使我们的系统更灵活,扩展性更好. --------------------- model:是…
1):Jsp的重定向和转发的流程有什么区别 重定向是客户端行为,转发是服务器端行为 重定向时服务器产生两次请求,转发产生一次请求,重定向时可以转发到项目以外的任何网址,转发只能在当前项目里转发 重定向会导致request对象信息丢失.转发则不会 转发的url不会变,request.getRequestDispatch().forward() 重定向的url会改变,response.getRedirect(); 重定向(response)不能访问 WEB-INFO 下的页面,而转发(request…
1):struts2 的基本概念: 1-1):Struts2 是什么? 1.Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互. 2.Struts 2是Struts的下一代产品,是在 struts 1 和 WebWork 的技术基础上进行了合并的全新的Struts 2框架. 3.其全新的 Struts 2 的体系结构与 Struts 1 的体系结构差别巨大.Str…
基础拦截器操作: 拦截器是一种AOP操作实现,那么在AOP之中用户一定不需要去关注拦截器的存在,用户只需要按照自己已经习惯的处理方式进行代码的编写即可. 首先我们先创建一个自定义的拦截器: package integration.uitl; import integration.bean.MlqUser; import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.hand…
常常为日期格式的转换而烦恼吗?那么就试试看看楼主的方式吧!让你摆脱烦恼,从而快乐撸码. 如果你只用作于一个日期的显示采用方式如下: 导入:相应的类库 <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> 引入:相应的标签: <fmt:formatDate value="${item.createdate}" pattern="yyyy-MM-…
 数据库连接: jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://39.105.105.186:3306/SpringMybatis?useUnicode=true&characterEncoding=UTF-8 jdbc.username=root jdbc.password=**** XML头文件: <?xml version="1.0" encoding="UTF-8"?> &l…
摘要:SpringMvc中的单多文件上传及文件下载:(以下是核心代码(拿过去直接能用)不谢) <!--设置文件上传需要的jar--> <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3.1</version> </dependency>…
日期格式的类型转换: 以往在 from 表单提交的时候,都会有字符串.数字.还有时间格式等信息. 往往如果是数字提交的话底层会自动帮我们把类型进行了隐式转换. 但是日期格式的却不能自动转换,这就需要我们自己来处理.这里介绍三种方式转换.(底部有相关提示信息) 案例目录结构: 各类中的内容及配置: ControllerWelcome 类: package controller; import org.springframework.stereotype.Controller; import org…
案例目录结构: Web.xml 配置: <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" > <web-app> <display-name>Archetype Created Web Application</display-n…
@controller 控制器(注入服务) 用于标注控制层,相当于struts中的action层 @service 服务(注入dao) 用于标注服务层,主要用来进行业务的逻辑处理 @repository(实现dao访问) 用于标注数据访问层,也可以说用于标注数据访问组件,即DAO组件 @component (把普通pojo实例化到spring容器中,相当于配置文件中的 ) 泛指各种组件,就是说当我们的类不属于各种归类的时候(不属于@Controller.@Services等的时候),我们就可以使…
<%-- Created by IntelliJ IDEA. User: asus Date: 2019/1/24 Time: 15:57 To change this template use File | Settings | File Templates. --%> <%@ page contentType="text/html;charset=UTF-8" language="java" isELIgnored="false&qu…
在使用fdfs之前,需要对其有一定的了解,这篇文章作为准备篇,将针对fdfs的简介,功能性,使用场景等方面进行介绍 一):起源 淘宝网开放平台技术部资深架构师余庆先生首先回顾了自己在Yahoo工作时的经历,他表示Yahoo当时的相册和论坛系统整个结构都进行了针对大规模分布式存储和并发操作的改进. 余庆从整个分布式文件系统的发展说起,谈到了FastDFS文件系统的概念和具体优缺点. 据了解,yahoo论坛和相册以前一直面临着扩容问题,同步延迟问题,同步失败问题等.其pat同步.定式扫描以及farm…
Oracle 索引的目标是避免全表扫描,提高查询效率,但有些时候却适得其反. 例如一张表中有上百万条数据,对某个字段加了索引,但是查询时性能并没有什么提高,这可能是 oracle 索引失效造成的.oracle 索引有一些限制条件,如果你违反了这些索引限制条件,那么即使你已经加了索引,oracle还是会执行一次全表扫描,查询的性能不会比不加索引有所提高,反而可能由于数据库维护索引的系统开销造成性能更差. 下面就是总结的能使 Oracle 索引失效的七大限制条件. 1. 没有 WHERE 子句 2.…
MYSQL中可以通过内外键链接,将有关系的表中数据合并到一起进行条件筛选: 首先创建两个新表,数据如下: student 表数据: score 表数据: 可以看到students表中stu_id为16048008的记录对应score表没有数据; 1.当进行内连接时,系统会自动忽略两个表中对应不起来的数据: -- 显示内连接所有数据: SELECT * FROM students st INNER JOIN score sc ON st.sid=sc.stu_id; 数据太多,只截图最末尾的: 可…
都说新的Arraylist 扩容是(1.5倍+1) 看了1.8的源代码发现不是这么回事 就用下面这段代码在jdk的三个版本运行看了下效果: import java.lang.reflect.Field; import java.util.ArrayList; public class ArrayListDemo { public static void main(String[] args) { ArrayList<Integer> list1 = new ArrayList<Integ…
最近空闲时间去面试 , 被问了一个问题list如何去重合并 , 想了半天只想到了最繁琐的循环方法 , 顿觉丢人. 整理一下资料供大家参考: List<String> a = new ArrayList<String>(); a.add("2"); a.add("4"); a.add("5"); a.add("6"); List<String> b = new ArrayList<Str…
Spring通过ThreadPoolTaskExecutor实现线程池技术,它是使用jdk中的Java.util.concurrent.ThreadPoolExecutor进行实现. Spring 配置线程池,有两种方式: 方式一:XML定义bean <!-- 包路径扫描 --> <context:component-scan base-package="spring.task"/> <!-- Spring线程池 --> <bean id=&q…
IoC是什么: 1):Ioc—Inversion of Control,即“控制反转”,不是什么技术,而是一种设计思想. 2):在Java开发中,Ioc意味着将你设计好的对象交给容器控制,而不是传统的在你的对象内部直接控制. 如何理解好Ioc呢? 理解好Ioc的关键是要明确“谁控制谁,控制什么,为何是反转(有反转就应该有正转了),哪些方面反转了”,那我们来深入分析一下: ● 谁控制谁,控制什么:传统Java SE程序设计,我们直接在对象内部通过new进行创建对象,是程序主动去创建依赖对象:而Io…
mysql的常用引擎 在MySQL数据库中,常用的引擎主要就是2个:Innodb和MyIASM. 首先: 1.简单介绍这两种引擎,以及该如何去选择. 2.这两种引擎所使用的数据结构是什么. Innodb引擎: 1):Innodb引擎,Innodb引擎提供了对数据库ACID事务的支持.并且还提供了行级锁和外键的约束.它的设计的目标就是处理大数据容量的数据库系统.它本身实际上是基于Mysql后台的完整的系统.Mysql运行的时候,Innodb会在内存中建立缓冲池,用于缓冲数据和索引.但是,该引擎是不…
特性: HashMap 与 Hashtable 的分析: 1):HashMap简介 1.底层数组+链表实现,可以存储null键和null值,线程不安全 2.HashMap 不是线程安全的 3.HashMap 是 map 接口的子类. 4.HashMap 允许null key 和 null value. 5.允许 key 重复,但是会把之前的覆盖. 6.HashMap 是 Hashtable 的轻量级实现(非线程安全的实现),他们都完成了Map接口. 7.HashMap 是 reHash算法,而…
原理:比较两个相邻的元素,将值大的元素交换至右端. 思路:依次比较相邻的两个数,将小数放在前面,大数放在后面.即在第一趟:首先比较第1个和第2个数,将小数放前,大数放后.然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后.重复第一趟步骤,直至全部排序完成. 第一趟比较完成后,最后一个数一定是数组中最大的一个数,所以第二趟比较的时候最后一个数不参与比较: 第二趟比较完成后,倒数第二个数也一定是数组中第二大的数,所以第三趟比较的时候最后两个数不参与比…
HttpClient: 场景需求如下: 1.项目中需要与一个基于HTTP协议的第三方的接口进行对接 2.项目中需要动态的调用WebService服务(不生成本地源码) 3.项目中需要利用其它网站的相关数据 这些需求可能或多或少的会发生在平时的开发中,针对每种情况,可能解决方案不止一种.本文使用HttpClient这种工具来讲解HttpClient的相关知识,以及如何使用HttpClient完成上述需求. HttpClient 不是浏览器? 有人说,HttpClient不就是一个浏览器嘛... 可…
前期工作:(引入相关 JAR ) <spring.quartz>1.8.4</spring.quartz> <!--spring 定时--> <dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>quartz</artifactId> <version>${spring.quartz}</version> <…
import java.util.HashMap; import java.util.Iterator; import java.util.Map; public class TestMap { public static void main(String[] args) { Map<Integer, String> map = new HashMap<Integer, String>(); map.put(1, "a"); map.put(2, "b…
1):下载 mongodb 包 [root@admin tools]# wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6.tgz 2):解压到指定目录 [root@admin tools]# tar -zxvf mongodb-linux-x86_64-3.0.6.tgz -C ../mongodb/ 3):配置系统文件profile [root@admin bin]# vim /etc/profile 添加以下信息…
前言:在你搭建集群之前先去搭建一个单机版的 跳转 Solr 集群构建图: 1):部署(4个)Tomcat 下载 更改每一个 tomcat 启动端口号: [root@VMSolr tomcat_cluster]# vim tomcat01/conf/server.xml 搜索 /port  分别更改为 8105.8180.8109 其余tomcat按以下配置: tomcat02:8205.8280.8209 tomcat03:8305.8380.8309 tomcat04:8405.8480.84…
下载 样式包  Layui  layer 引入 js 及 样式: <link rel="stylesheet" href="${ctx}/static/layui/css/layui.css" media="all"> <script src="${ctx}/static/layui/layui.all.js" charset="utf-8"></script> 1):正…
1):单一 zookeeper  搭建步骤 2):zookeeper 伪集群搭建 1):新建一个集群目录 [root@zoodubbo opt]# mkdir zookeeper_cluster 2):进入 zookeeper_cluster 目录 复制三份 zookeeper(这里我直接从单机哪里拷过来的) [root@zoodubbo zookeeper]# cp -r zookeeper-3.4.10 /opt/zookeeper_cluster/zookeeper01 [root@zoo…
POM 文件: <!-- solr客户端 --> <dependency> <groupId>org.apache.solr</groupId> <artifactId>solr-solrj</artifactId> <version>4.10.3</version> </dependency> JAVA 代码: package com.gdbd.solrj; import org.apache.s…
Slor 服务的搭建: 1):上传 solr  tar包到指定目录 2):解压到 指定目录下 [root@admin tools]# tar -zxvf solr-4.10.3.tgz.tgz -C ../solr/ 3):solr 整合 tomcat: //切换到 sole dist 目录下 [root@admin dist]# cd /opt/solr/solr-4.10.3/dist/ //拷贝 solr-4.10.3.war 到 tomcat/webapp/ 下 [root@admin…