javaweb

JavaWeb快速入门(一)——新建JavaWeb项目 今天是暑期实训的第三天,上午继续昨天未讲完的任务java,比如:java的异常处理、java的集合等其它java常用知识,具体讲解链接如下。下午开始将JavaWeb服务器端程序开发,包含:处理请求和展示返回回来的数据。其中,处理请求分为四步:1、创建javaweb工程,2、开启服务器,3、编写处理请求的代码,4、运行。(一)创建javaweb工程 在创建之前,电脑需要有myeclip... 阅读详情

一.Javaweb的简介

javaweb即用Java语言来开发网站

网页--javaweb程序--数据库

二.JDBC(Java数据库连接)

JDBC就是使用Java语言操作关系型数据库的一套API。

MySQL驱动就是MySQL的实现类。

1.入门

(1)注册驱动

(2)获取连接

(3)定义SQL语句

(4)获取执行对象

(5)执行SQL语句

(6)处理结果

(7)释放资源

2.JDBC API

(1)Driver Manager(驱动管理类)

i.注册驱动

ii.获取连接        getConnection(url,user,password)

url:连接路径

语法:jdbc:mysql://ip地址:端口号(3306)/数据库名

(2)connection(数据库连接对象)接口

作用:i.获取执行SQL语句的对象

ii.管理事务:        开始:Setutocommit(boolean);

提交:commit();

回滚:rollback();(在try-catch中)

(3)Statement(对象)

executeUpdate(sql)执行DDL,DML

executeQuery(sql)执行DQL,返回值:resultset结果集对象

(4)resultset结果集对象

boolean next();将游标下移一行并判断

getxxx(参数)参数可以是列的编号或名称,xxx为数据类型,Int/String

(5)preparedStatement接口(防止sql注入)

作用:预编译Sql语句并执行。

useserverPrestmts=true开启预编译功能

mysql服务器-》检查sql语法-》编译-》执行sql

三.数据库连接池

好处:资源复用,提高速度,避免数据库连接遗漏。

负责分配,管理数据库连接。

常见的有:Durid,DBCP,C3P0

四.Maven

专门管理和构建Java项目的工具。

仓库:本地仓库,远程仓库,中央仓库

1.Maven的基本使用

命令:

compile 编译

test 测试

package 打包

install 安装

clean 清理

eg.mvn compile

2.Maven的生命周期

分为3套:clean,default,site(产生报告,发生站点)

同一个生命周期中,执行后边的命令,前面的所有命令都会自动执行。

3.Idea配置Maven

Maven坐标是资源的唯一标识。

坐标的组成:groupId:定义当前Maven项目隶属组织的名称(域名反写)

artifaltId:Maven项目的名称(模块名称)

version:定义当前的版本号

如何显示Maven侧面按钮。

4.依赖管理

(1)使用坐标导入jar包

<dependencies>标签

<dependency>

<groupId>

<artifactId>

<version>

<scope>

(2)自动导入

(3)快捷方式

ALT+insert

(4)依赖范围

scope默认compile

可以设置对应jar包的作用范围:编译环境,测试环境,运行环境

五.Mybatis

1.简介

Mybatis是一款优秀的持久层框架,用于简化JDBC的开发。

javaEE的三层框架:持久层,表现层,业务层

持久层:将数据保存到数据库的那一层代码。

2.JDBC的缺点

(1)硬编码问题:注册驱动,SQL语句

(2)操作繁琐:手动设置参数,手动封装结果集

3.Mybatis的快速入门

ALT+鼠标左键==整列编辑

(1)创建表,导入数据

(2)创建模块,导入坐标

(3)编写Mybatis配置文件

(4)编写SQL映射文件

(5)定义类,加载配置文件,获取sqlsessionFactory对象,获取SQL session对象

执行SQL,释放资源

4.解决SQL映射文件的警告提示

IDEA不认识数据库中的表,应该让其与数据库联系。

5.Mapper代理开发

在执行sql时,有硬代码问题。需要固定的(例如:”test.selectAll)

方法:获取接口代理对象,执行sql

创dirtory时,名字起法:(例如:com/.../...类似于Java中的com........一致)

方式:1.创建一个接口与sql的映射文件名一致,且置于同一个目录下

2.在接口中创建方法,返回值类型与参数类型一致,id为方法名

3.在测试类中,获取sqlsession对象

sqlsession.getMapper(userMapper.class)

4.获取Mapper代理对象

userMapper.selectAll();

environment:配置数据库连接环境信息

可以配置多个环境,用default属性切换不同信息。

注意配置标签时,要注意顺序。

Mybatis完成操作需要三步:编写接口方法-》编写sql-》执行方法

6.配置文件进行增删改

        查看所有:(1)数据库字段的名称与实体类的不同(不可自动封装数据):1.起别名2.sql片段,使用sql标签

3.resultMap:id:完成主键字段的映射/   result:完成一般字段的映射=》column:表的列名

property:实体类的属性名

先定义<resultMap>标签,在<select>标签中,将resultType替换成resultMap

        查看详情:就是根据id查询,mybatis参数占位符:#{}==》将会被替换成?为了防止sql注入

eg.<select id="..." resultMap="...">

        select * from 表名 where id=(=可能会是>/<)#{id(与接口方法中的局部变量名称一样)};

</select>

如果是>/<,则需要进行特殊字符的处理。

1.转义字符:<==》&lt;

2.CDATA区:<![CDATA[        <        ]]>

        条件查询:参数接收:1.散装参数:如果方法中有多个参数,用Param(“参数占位符”)

2.对象参数(接收参数,处理参数eg.companyname="%"+companyname+"%"表示companyname前后字符任意,封装对象)

3.Map集合参数

        动态条件查询:动态sql即sql语句会随着用户的输入或外部条件的而变化

(1)多条件:在select标签中添加if标签,if:条件判断        test:写条件表达式

如果遇到问题是条件1不成立,后面会有语法错误(即多了一个and)。

方案1:恒等式,where1=1 and...

方案2:用where关键字,<where>.....</where>

(2)单条件查询

从多个条件中选择一个

choose(when==>相当于case,otherwise==》default)

添加:<insert>

1.需要手动提交事务:sqlsession.commit();

2.可以设置自动提交事务:在获取sqlsession对象时,session sql=sqlsessionFactory.opensession(true);

<insert id="add" useGeneratedKeys="true" keyProperty="id">
    insert into user(name,age,sex)values(#{Name},#{Age},#{Sex})
</insert>

id的值会被获取出来

修改:①修改全部字段

编写Mapper接口,返回类型void

编写SQL映射文件,执行方法

②修改动态字段

删除:

①删除一个:

②批量删除:

需要接收id数组

collection属性表示表要遍历的数组

Mybatis会将数组参数,封装成一个Map集合

六、Mybatis参数传递

提供了ParamNameResolver类,进行参数封装。

1.Mybatis接口方法中可以接受各种各样的参数

①单个参数:

pojo类型(eg.brand),collection,Map,list,Array,其他类型

②多个参数:

需要加注解:==》替换Map集合中的arg键名,可读性更高。

封装成Map集合,可不加注解,

一个参数对应两个键(arg0,param1)/(arg1,param2)

③单个注解:

1.pojo类:直接使用,属性名与参数占位符名称一致即可。

2.Map类型:直接使用,键名与参数占位符一致即可。

3.Collection:封装成Map集合

7.注解完成增删改查

直接写入接口类中。

使用注解开发会比配置文件开发更为方便,不需要在xml文件里添加SQL语句。

查询:@Select

添加:@Insert

修改:@Update

删除:@Delete

注解完成简单功能,配置文件完成复杂功能。

JavaWeb入门到精通-搭建javaweb环境并运行javaweb项目-下 宝子们去主页先看上篇哈! 昨天我们学习了一下JDK的安装与配置和tomcat下载与运行(未完)。今天我们就来说一下idea运行javaweb和上次没完成的tomcat下载与运行,下面一起开始吧! 更多更详细的知识可以看视频教程:​ 动力节点最新JavaWeb视频教程,javaweb零基础入门到精通IDEA版-持续更新中_哔哩哔哩_bilibili你的三连就是录制视频的动力!一定不要忘记收藏、点赞、投币哦~本套教程讲述了JavaWeb从入门到实战全部的知识点,主要包括:Servlet、Filter、Lis 阅读详情

相关推荐

微信小游戏过审实战:JS混淆与马甲包规避技巧

本文详细解析了微信小游戏过审的实战技巧,重点介绍了JS代码混淆与马甲包规避策略。通过代码混淆、资源文件处理和分阶段提审等方法,有效应对微信机审系统的代码包侵权检测,提升过审成功率。文章还分享了常见问题的解决方案和实战经验,为开发者提供实用指导。

weixin_29234423的博客 279

JavaWeb专栏之(一):什么是JavaWeb?

JavaWeb专栏之(一):什么是JavaWeb? 前言: 关注:《遇见小Du说》微信公众号,分享更多Java知识,不负每一次相遇。更多内容请访问:www.dushunchang.top 本周小Du猿开始回炉JavaWeb相关的知识点,首次接触JavaWeb还是在大一,白驹过隙,日光荏苒,时隔三年,重炉javaweb仍然收获颇多。 实战开发中接触到Spring Boot后就很少再使用servlet,但仔细研究过Spring Boot底层源代码后,竟然发现Spring Boot竟让是servlet的封装迭代

小Du猿的博客 21万+

abaqus2matlab的安装与使用:如何用matlab提取abaqus的odb结果

官网abaqus2matlab官网地址matlab社区地址matlab社区地址在这里可以看到.m文件的源码论文:Abaqus2Matlab: A suitable tool for finite element post-processingabaqus2matlab可以处理.inp、.fil、.odb三种类型的文件。.inp文件:处理功能就在于只是单纯的输出inp文件,由于我自己写了自己的函数,不需要用到这个功能。

qianxin1234的博客 2018

JavaWeb专栏之(三):Eclipse创建JavaWeb项目

JavaWeb专栏之(三):Eclipse创建JavaWeb项目 前言: 关注:《遇见小Du说》微信公众号,分享更多Java知识,不负每一次相遇。更多内容请访问:www.dushunchang.top 在上一篇文章中,小Du猿带大家使用Idea创建JavaWeb项目,相比之下Idea作为当前非常主流的开发IDE,深受Java后端程序员使用。市面上约75%开发者使用Idea,一代开发神器Eclipse就此没落。小Du猿第一次使用的开发IDE就是Eclipse,也算是我的启蒙神器。今天就带了使

小Du猿的博客 23万+

基于深度学习的高精度牙齿健康检测识别系统(PyTorch+Pyside6+YOLOv5模型)

近年来,机器学习和深度学习取得了较大的发展,深度学习方法在检测精度和速度方面与传统方法相比表现出更良好的性能。YOLOv5是单阶段目标检测算法YOLO的第五代,根据实验得出结论,其在速度与准确性能方面都有了明显提升,开源的代码可见https://github.com/ultralytics/yolov5。因此本博文利用YOLOv5检测算法实现一种高精度家禽猪识别检测模型,再搭配上Pyside6库写出界面系统,完成目标检测识别页面的开发。

sc1434404661的博客 5799

别再纠结了!实测罗技Flow、对拷线、微软Mouse without Borders,我的最终选择是...

本文通过实测对比罗技Flow、对拷线和微软Mouse without Borders等多设备控制方案,详细分析了各自的优缺点及适用场景。作者最终选择了对拷线与罗技键鼠的组合方案,为专业用户提供了稳定可靠的多设备协同办公解决方案,特别适合需要频繁传输大文件和跨设备操作的用户。

weixin_33696106的博客 408

eclipse新建javaweb项目——javaweb系列(一)

eclipse新建javaweb项目——javaweb系列(一)

qq_23858785的博客 1万+

〔重庆理工大学〕操作系统实验指导书【实验三 系统调用】

本实验指导书详细介绍了在Linux 0.11系统中添加两个自定义系统调用(iam()和whoami())的完整流程。实验内容包括:修改unistd.h添加系统调用号,更新sys_call_table数组,实现内核函数sys_iam()和sys_whoami(),以及编写测试程序验证功能。关键步骤涉及用户态与内核态数据传递、系统调用号分配、中断处理机制等核心概念。实验要求学习者通过修改内核源码、理解系统调用原理,最终实现名字存储与读取功能,并完成测试验证。实验还提供了视频学习资源和参考书籍,帮助深入理解操作系

Pretty Boy Fox的博客 1295

【JavaWeb环境搭建】

服务器:安装了服务器软件的计算机本质上还是一台电脑,那么安装了服务器软件,也就是说,这个电脑是个硬件,我们得安个服务器软件,那么这个电脑才能被称为一台真正的服务器,安装了Web服务器软件,那我的电脑就是一个Web服务器,可以让别人也访问到我.服务器软件:接收用户的请求,处理请求,做出响应web服务器软件:接收用户的请求,处理请求,做出响应。在web服务器软件中,可以部署web项目,让用户通过浏览器来访问这些项目web容器常见的java相关的web服务器软件。

让优秀成为一种习惯! 6796

隧道裂缝检测【C++PCL】

我们团队注重每一个细节,确保代码的可读性、可维护性和可扩展性达到最高标准。我们严格遵循行业最佳实践,采用模块化和面向对象的设计原则,使得我们的代码结构清晰且易于理解。我们的点云服务更是引以为傲。我们的技术团队拥有深厚的专业知识和丰富的经验,能够提供高度准确和高效的点云处理服务。无论是点云的获取、存储还是分析,我们都能够满足客户的需求,并提供出色的解决方案。我们的技术实力也是无与伦比的,拥有广泛的技术背景和深入的专业知识。

weixin_45196569的博客 848

如何在Windows上安装Node-RED?

Node-RED 是一款基于流程的可视化编程工具,专注于物联网(IoT)和自动化应用的快速开发,其核心特点是通过拖拽节点构建数据流网络,实现低代码/无代码编程。

猿小白的博客 1171

idea创建一个javaweb项目

前提 java环境以及tomcat的安装 1、IDEA创建Web项目 此处以Idea 2020.3.4举例 1、新建普通Java项目 注意:Idea2020无法直接新建JavaWeb项目,只能通过新建普通Java项目的方式间接新建JavaWeb项目。 选择项目位置和普通Java项目相同,此处略过。 2、修改普通Java项目为JavaWeb项目 项目根目录->右键->Add Framework Support 选择JavaEE版本 勾选左侧的Web Application

咖啡味的小认真 3万+

39、高频 LLC 谐振转换控制系统动态优化算法分析与研究

本文针对高频下LLC谐振转换器动态性能差的问题,提出一种基于谐振电容器充放电估计动态切换时间的优化控制算法。通过改进状态轨迹控制方法,突破传统算法在谐振频率与开关频率相等条件下的限制,并结合新型采样策略有效抑制电压过冲。算法在MATLAB和SABER中完成仿真验证,并搭建基于STM32F407的原型系统进行测试,结果表明该方法显著缩短动态响应时间,提升系统稳定性。研究为高频、高功率密度开关电源的动态优化提供了可行解决方案。

linux6sysadmin的博客 111

JavaWeb是什么?总结一下JavaWeb的体系

JavaWeb是什么?通过最近在尚硅谷上学习,分享一下 JavaWEB 前言 JavaWeb的技术体系 登录页面的开发 ...

俊墨客 3032

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

javaweb项目

源码:(百度网盘) 链接:JavaWeb 提取码:3xf9 链接: Oracle数据库文件 提取码:vkko 说明: 不希望大家复制粘贴、交作业,一气呵成,动作行云流水。而是希望看下面的讲解,学会自己设计一个JavaWeb项目。可能有些地方会讲解不好, 大家自行纠正,界面不美观请见谅,没有美术细胞(pao)--’’’。 发这篇博客的原因是:不说了 心酸(>< )已哭晕在厕所… 数据库不唯一,更换mysql 更换mysql-jdbc ,建库建表,修改util 即可。 ​ 讲解: ​ 环境

LJCC_c的博客 9108

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

JavaWeb

参考自黑马JavaWeb课程笔记

qq_61877487的博客 3943

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

JAVAweb环境搭建

javaweb环境搭建、jdk下载并安装过程、Tomcat服务器的安装和搭建

weixin_66110079的博客 6743

学习JavaWeb的总结

总的来说,学习JavaWeb是一次充满挑战而又有意义的经历。它让我对Web开发和企业级应用有了更全面和深入的理解,也培养了我的动手能力和解决问题的勇气。我相信,在不久的将来,JavaWeb会继续发展壮大,成为企业级应用开发的重要工具之一,而我也会继续深入学习和探索,不断提升自己的JavaWeb技能。愿我们共同进步,共同成长!

qq_73578372的博客 2224

JavaWeb是什么?如何学习JavaWeb的体系

java语言是当前最流行的开发语言之一。它的风格十分接近C++语言,是一个纯粹的面向对象的程序设计语言。Java继承了C++语言面向对象技术的核心,舍弃了C++语言中复杂和一些容易出错的特性,并在内存管理方面得到了增强。 web是指Internet 的图形、多媒体部分。万维网(环球网)(World Wide web)简称Web。Web 由众多Web 页组成。要浏览Web,可使用称为Web 浏览器的程序。参见“Internet”和“Web 页”。 java web 是指有Java语言开发出来可以在万维网上访问

Aa112233aA1的博客 4220

web后端(javaWeb)

文章目录 javaweb是什么?可以做什么? Java web ,是用Java技术来解决相关web互联网领域的技术的总称。web包括web服务器和web客户端两部分。从事Java web开发需要掌握以下技术: 基于页面的前端技术,如:HTML、CSS、JavaScript、JQuery; 动态语言技术,如:Java、JSP; 数据库技术,如:Oracle、MySQL、Sql Server; 工具与组件,如:服务器、SSM、SSH框架等。 javaweb的应用范围 1.开发网站(如淘宝,京东等大型网站) 2.

客官不爱喝酒的博客 4612

【JavaWeb】JavaWeb与JavaWeb技术栈

本篇主要讲述了JavaWeb的相关概念以及技术栈,比如什么是客户端与服务器、一个项目的逻辑组成、JavaWeb的核心技术。

请你喝杯Java 1617

JavaWeb概述

快速JavaWeb概念,掌握常用软件体系结构,掌握web 应用程序的工作原理

淡独东执 5807

JavaWeb之 Web概述

Web是全球广域网,也称为万维网(www),能够通过浏览器访问的网站。在我们日常的生活中,经常会使用浏览器去访问百度、京东等网站,这些网站统称为Web网站。如下就是通过浏览器访问百度官网的界面:我们知道了什么是 Web,那么 JavaWeb又是什么呢?顾名思义, JavaWeb就是用 Java技术来解决相关Web互联网领域问题的技术栈。等学习完 JavaWeb之后,同学们就可以使用 Java语言开发我们上述所说的网站。

林二月的博客 1446
上一篇: CSS及javascript
下一篇: Mybatis总结
*haha*,
博客等级 码龄3年 367粉丝 40原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值