java常用知识要点整理

这是本人的第一篇博客,主要目的是为了整理一下自己所学的只是。并且是第一次整理发布文章,有一些也是网站百度参考,并全部是自己手写的,希望有不好的,大家能帮忙指出,大家共同进步。

**1.**java语言的基础

Java的开发环境主要是由jdk(开发环境),jre(运行环境)和Jvm(java虚拟机)组成。JVM主要负责解释执行,将.java文件加载成.class文件编译执行,管理分配内存,垃圾回收。java主要表现在面向对象,面向对象的主要基本特征是:封装,继承,多态如果还要说多一个,那就是抽象。

**2.**java语法的基础:

(1)关键字(2)标识符(3)常量(4)变量(5)数据类型(6)运算符号(7)语句(8)函数(9)数组

**3.**java web开发的框架:

(1)Spring+SpringMVC+Mybatis

springMVC+mybatis系统架构是表现层(springMVC)==>业务层(service接口)==>持久层mybatis(dao层)。
SSM由浏览器发送请求由dispatcherservlet处理,然后调用根据HandlerMapping配置有请求路径与处理器有相对关系的controller(controller主要用来处理业务逻辑),接着调用相应的业务层Service,再调用相应的持久层DAO,然后controller会返回相应的数据和视图名,DispatcherServlet就会依据视图名,返回真正的视图对象,再调用响应的jsp给浏览器响应。
主要步骤如下,
1.创建项目
2.导jar包
3.引入配置文件
4.在项目生成的we.xml配置springmvc核心控制器(前端控制器 dispatchServlet)在引入的spring配置文件配置视图解析器,配置扫描注解和handlermapping.
5.再添加配置文件,配置数据源(DataSource)
6.最后编写实体,dao接口,service接口和实现,controller
7.根据实现增删改查需求编写mapper文件。

(2)spring+strust2+hibernate

SSH框架相比SSM框架还是有点区别的,SSH不用写sql语句,需要写的代码少,但是性能较差,,而SSM需要写sql语句,需要写的代码多,但是相比性能比较好。
struts2+hibernate系统架构是表现层(struts2)==>业务层(service)==>持久层 hibernate(dao层)
SSH主要实现是由浏览器发送请求,然后struts2核心过滤器(StrutsPrepareAndExecuteFilter)接收请求并且处理请求,然后到Service层,调用相应的DAO接口,由Spring ioc容器和AOP组成,aop完成事务管理,再整合Hibernate完成持久化即dao层,然后dao接口根据相应的接口方法调用相应的HQL语句调用数据库,再返回相应的视图或者数据给业务层,业务层再返回给控制器,控制器调用相应的视图或者数据,最后再发送给浏览器。spring和struts整合就是将action交给spring ioc创建,spring和hibernate整合就是将seesionFactiory交给spring管理和负责aop事务管理。

**4.**MVC设计模式:

MVC设计模式是开发中最经常用的一种设计模式,目的是为了分层明细,把业务层,逻辑层,界面显示分离出来的方法,使得代码更清晰,对具体的层面做具体的事情分工明细以提高代码的可读性,复用率和降低耦合度。
M代表Model层,V代表View层,C代表Controller层他们分别是业务层,界面和逻辑层。

5. 主要开发工具:

java web 主要有eclipse,myeclipse和IntelliJ IDEA,安卓主要使用的Android Studio。

6 java需要知道的一些前端技术:

Html,Js,Jquery,css等是javaweb经常会接触到的。

**html:**html是一门超文本标记语言,以我个人的理解是html是由很多个标签组成的,例如这个网页你需要加个按钮,你就可以来一个 <button/> 标签,密码框就来一个 <input type="password"/>标签,图片就<img src="**"/>等等,可拓展性强。
**js:**js的全称是javaScript,是一门脚本语言,他的特点是语法简洁,代码无需编译,逐行执行是一种解释型的脚本语言。主要用来向html页面添加交互行为,例如给html界面绑定一个按钮的单击事件,登录注册的Ajax交互,嵌入动态文本于HTML页面,读写HTML元素等等。
jquery: jquery也属于js的一种,jquery是一个快速简洁的javaScript框架,语法比js还简洁。主要用来快速获取文档元素,制作漂亮页面动态效果,增强事件处理,比js更简洁的ajax异步交互,更改网页文本和插入图像等。并且提供了类似CSS选择器一样的选择器,例如$("div")选中所有div元素,使其更方便,并且其事件处理跟jquery事件方法变得语言更简洁。
CSS:层叠样式表,就我理解主要用来给html添加样式。有了CSS,可以让html页面写的更简洁,不用再html里面写内嵌样式,并且使得代码耦合度降低,可读性更好。打比方你写了CSS样式引入,以后需要修改就直接修改CSS文件就好了,无需再去找html里面的元素再去修改。

7. 代码规范和编码能力:

个人觉得作为一个好的程序员必须要有良好的代码规范和编码能力,写代码其实不难,但是要写一份好代码难。例如叫你写一个功能,你能很快就写出来,但是要你整合到项目中,那便要考虑很多了,要降低代码的耦合度,要防止线程并发,怎样可以利于后面维护,后面添加新功能会不会影响什么的,这些便会让我们很头疼。所以我听了一个朋友他跟我说的一句话我也深有感触,如果一页写出来的代码很多,那你就要考虑是不是要封装一下了。总之这些也是需要边学习,边积累。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值