MyBatis

做一个完整的Java Web项目需要掌握哪些技术?

混江龙づ霸主 提交于 2020-07-28 03:26:44
做一个完整的Java Web项目需要掌握哪些技术? 2017-12-19 10:39:41 来源: Deamon Thread 收藏 我要投稿 最近自己做了几个 Java Web项目,有公司的商业项目,也有个人做着玩的小项目,写篇文章记录总结一下收获,列举出在做项目的整个过程中,所需要用到的技能和知识点,带给还没有真正接触过完整javaWeb项目的同学一个比较完整的视角,提供一个所谓的“大局观”,也以便于同学们更有针对性地学习。当然,这里所用到的例子项目是非常初级,简单的项目,所以大神们就可以不用往下看了。 首先我们从网站的架构谈起。一般来说,我们将网站分为前端和后端。前端主要负责页面的展示,后端则是业务逻辑的实现。由于HTML5的兴起,前端领域已经越来越火热,前端技术发展极快,今天我们不做过多介绍,因为现在的互联网公司,前端工程师和Java工程师是完全不同的两种技术岗位。所以我们还是以Java的角度去看待一个项目。在前端没有那么火的前几年,或者说在经典的Java Web的开发模式中,我们使用Jsp技术来作为展现层的实现,其实也就是所谓的前端。当然只懂得Jsp是不够的还需要懂html,css,js,ajax等一些前端的基础技术,Jsp技术在其中扮演外层包装的角色。那么后端呢?后端是由于一些实现了业务逻辑Java代码和 数据库 组成。说到这,就可以推出Web开发中经典的MVC模式

SXSSFWorkbook的简单使用

可紊 提交于 2020-07-27 21:55:14
在工作中使用到SXSSFWorkbook来导出Excel,写一篇博客记录一下SXSSFWorkbook的使用方法 1.介绍 SXSSFWorkbook是属于apache基金会的Excel导出工具类,从其 官网 上可以看出SXSSFWorkbook实现了Workbook接口 Streaming version of XSSFWorkbook implementing the "BigGridDemo" strategy. This allows to write very large files without running out of memory as only a configurable portion of the rows are kept in memory at any one time. SXSSFWorkbook是实现“BigGridDemo”策略的XSSFWorkbook的流媒体版本。 SXSSFWorkbook 允许编写非常大的文件而不会耗尽内存, 因为在任何时候,只有可配置的一部分行保存在内存中。 2.使用 首先我们定义一个列的实体类,包含列的名称,样式等 import org.apache.poi.ss.usermodel.CellStyle; /** * @describe 定义excel列 * */ public class

Postgis 地理函数使用

你。 提交于 2020-07-27 15:07:51
最近使用postgis的地理函数做一些区域查询判断,SQL代码如下: <sql id="region_condition_geo"> <if test="geog != null"> <if test="geog.type == 'circle' "> AND ST_Intersects ( ST_Buffer (ST_GeomFromText ('POINT(${geog.centerString})', ${geog.srid}) :: geography, ${geog.radiusMetre} ) :: geography, position ) </if> <if test="geog.type == 'rectangle' "> and ST_Intersects(ST_GeomFromText('POLYGON((${geog.pointArr}))', ${geog.srid})::geography, position ) </if> <if test="geog.type == 'polygon' "> and ST_Intersects(ST_GeomFromText('POLYGON((${geog.pointArr}))', ${geog.srid})::geography, position ) </if> </if> </sql> 执行时报错: bad

IDEA 整合 SSM 框架学习

♀尐吖头ヾ 提交于 2020-07-27 08:37:05
认识 Spring 框架 更多详情请点击这里: 这里 Spring 框架是 Java 应用最广的框架,它的 成功来源于理念,而不是技术本身 ,它的理念包括 IoC (Inversion of Control,控制反转) 和 AOP(Aspect Oriented Programming,面向切面编程) 。 什么是 Spring: Spring 是一个 轻量级的 DI / IoC 和 AOP 容器的开源框架 ,来源于 Rod Johnson 在其著作 《Expert one on one J2EE design and development》 中阐述的部分理念和原型衍生而来。 Spring 提倡以 “最少侵入” 的方式来管理应用中的代码,这意味着我们可以随时安装或者卸载 Spring 适用范围:任何 Java 应用 Spring 的根本使命:简化 Java 开发 尽管 J2EE 能够赶上 Spring 的步伐, 但 Spring 并没有停止前进, Spring 继续在其他领域发展,而 J2EE 则刚刚开始涉及这些领域,或者还没有完全开始在这些领域的创新。 移动开发、社交 API 集成、NoSQL 数据库、云计算以及大数据 都是 Spring 正在涉足和创新的领域。Spring 的前景依然会很美好。 Spring 的优势 低侵入 / 低耦合 (降低组件之间的耦合度

看完这10个spring 项目,我同时拿到了BAT的offer

筅森魡賤 提交于 2020-07-27 05:49:46
一、mall star 数 12.7k,项目地址: 回复“ mall ”获取源码 mall项目是一套电商系统,包括前台商城系统及后台管理系统,基于SpringBoot+MyBatis实现。前台商城系统包含首页门户、商品推荐、商品搜索、商品展示、购物车、订单流程、会员中心、客户服务、帮助中心等模块。后台管理系统包含商品管理、订单管理、会员管理、促销管理、运营管理、内容管理、统计报表、财务管理、权限管理、设置等模块。 项目演示: 二、Cloud-Platform star 数 8k,项目地址: 回复“ cloud-platform ”获取源码 Cloud-Platform是国内首个基于Spring Cloud微服务化开发平台,具有统一授权、认证后台管理系统,其中包含具备用户管理、资源权限管理、网关API 管理等多个模块,支持多业务系统并行开发,可以作为后端服务的开发脚手架。代码简洁,架构清晰,适合学习和直接项目中使用。核心技术采用Spring Boot 2.1.2以及Spring Cloud (Greenwich.RELEASE) 相关核心组件,采用Nacos注册和配置中心,集成流量卫兵Sentinel,前端采用vue-element-admin组件。 项目模块: 项目演示: 三、微人事 star 数 3.3k,项目地址: 回复 “微人事” 获取源码

org.mybatis.spring.annotation.MapperScan.factoryBean()

扶醉桌前 提交于 2020-07-26 03:55:30
IDEA:springboot项目启动程序添加@MapperScan(value = "com.xxx.xxx.dao")报错:Invalid default: public abstract java.lang.Class org.mybatis.spring.annotation.MapperScan.factoryBean() 这个错误找了半开,网上也查了,很多说是没有添加spring与Mybatis的相关jar,对于我自己的错误是这样的 错误的 <dependency> <groupId> com.baomidou </groupId> <artifactId> mybatis-plus-boot-starter </artifactId> </dependency> 正确的 <dependency> <groupId> com.baomidou </groupId> <artifactId> mybatis-plus-boot-starter </artifactId> <version> 3.3.2 </version> </dependency> 错误原因是因为我在maven依赖中没有写版本号 来源: oschina 链接: https://my.oschina.net/u/4236225/blog/4298371

互联网 BAT 大厂 Java高级工程师面试题:1000道题目让你做到面试无忧!

半世苍凉 提交于 2020-07-25 21:08:34
发现网上很多Java面试题都没有答案,所以花了很长时间搜集整理出来了这套Java面试题大全,希望对大家有帮助哈~ 本套Java面试题大全,全的不能再全,哈哈~ 内容涵盖: Java、 MyBatis. ZooKeeper. Dubbo、Elasticsearch. Memcached、Redis、MySQL、Spring、 Spring Boot. Spring Cloud、RabbitMQ、Kafka、Linux等技术栈 不多说了开始上题了 整理了太多的题了 总共整整1000道面试题,这可是费尽了我的心思,太多了 我就先截图一部分给你们,下面我们再来看看里面的内容: 以上这些你们看到的 不过只是1000道面试题中的沧海一粟而已 可以说这就是面试宝典 涨薪秘籍了! 那么如何领取这份面试宝典呢 只需要关注+转发小编我的这篇文章 然后私信我(面试宝典)即可领取哦! 来源: oschina 链接: https://my.oschina.net/u/4324861/blog/4363932

MyBatis框架高级应用详解

眉间皱痕 提交于 2020-07-25 20:59:11
项目已托管到 GitHub ,大家可以去GitHub查看下载!并搜索关注微信公众号 码出Offer 领取各种学习资料! MyBatis 一、ORM概述 对象关系映射(Object Relational Mapping,简称ORM)是通过使用描述对象和数据库之间映射的元数据,将面向对象语言程序中的对象自动持久化到关系数据库中。本质上就是将数据从一种形式转换到另外一种形式。 ORM 二、ORM映射 2.1 MyBatis自动ORM失效 MyBatis只能自动维护库表“列名”与“属性名”相同时的一一对应关系,二者不同时,无法自动ORM。 自动ORM失效 007 2.2 解决方式一:列的别名 在SQL中使用 as 为查询字段添加列别名,以匹配属性名。 <mapper namespace= "com.mylifes1110.dao.ManagerDao" > <select id= "selectManagerByIdAndPwd" resultType= "com.mylifes1110.bean.Manager" > SELECT mgr_id AS id , mgr_name AS username , mgr_pwd AS password FROM t_managers WHERE mgr_id = #{id} AND mgr_pwd = #{pwd} </select> <

maven项目快速搭建SSM框架(一)创建maven项目,SSM框架整合,Spring+Springmvc+Mybatis

南笙酒味 提交于 2020-07-25 19:41:37
首先了解服务器开发的三层架构,分配相应的任务,这样就能明确目标,根据相应的需求去编写相应的操作. 服务器开发,大致分为三层,分别是: 表现层 业务层 持久层 我们用到的框架分别是Spring+Springmvc+mybatis,技术相对应的是: Spring--业务层 Springmvc--表现层 Mybatis--持久层 了解了技术相对应的层,那么我们开始来编写. /** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** * 一个一个框架写先写spring框架,测试无异常再写别的框架测试无异常, * * 然后整合, 用spring去整合springmvc和Mybatis, * * 这样可以减少不必要的出错. * *                                     */ 创建一个maven项目 Tip: ( 这里主要是给没有创建过maven项目的同学看,创建过的直接跳转到 第一步 开始框架搭建 ) 点击Create New Project--> 点击Next 一般填写上面的 Name 和 GroupId 即可,然后 点击Next 配置好然后 点击Finish. 无异常那么我们创建好一个maven项目了

第1章 MyBatis简介

China☆狼群 提交于 2020-07-25 06:35:58
MyBatis介绍 MyBatis是支持 定制化SQL 、存储过程以及高级映射的优秀的 持久层框架 。 MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。 MyBatis可以使用简单的 XML 或 注解 用于配置和原始映射,将 接口和Java的POJO 映射成数据库中的记录。 推荐使用XML而不是注解。 MyBatis历史 原是Apache的一个开源项目iBatis。 2010年6月这个项目由Apache Software Foundation迁移到了Google Code,随着开发团队转投Google Code 旗下,iBatis3.x正式更名为MyBatis。代码于2013年11月迁移到Github。 iBatis一词来源于“internet”和“abatis”的组合,是一个 基于Java的持久层框架 。iBatis提供的持久层框架包括SQL Maps和DAO。 为何要用MyBatis MyBatis是一个 半自动化 的持久化层框架。 JDBC SQL夹在Java代码块里,耦合度高导致硬编码内伤。 维护不易且实际开发需求中SQL是有变化,频繁修改的情况很常见。 Hibernate和JPA 长难复杂SQL,对于Hibernate而言处理也不容易。 内部自动生产的SQL,不容易做特殊优化。 基于全映射的全自动框架,大量字段的POJO进行部分映射时比较困难。