books

IDEA使用maven整合ssm框架(SpringMVC + Spring + Mybatis)【完整代码实现书籍管理功能】

时光毁灭记忆、已成空白 提交于 2020-02-05 01:41:41
本篇整合内容非常适合新手学习,表现层(springmvc),业务层(spring),持久层(mybatis)分别对应一个配置文件,配置文件清晰不混乱,熟练后可以自行减少配置文件个数达到同样效果O(∩_∩)O。 这里我们选择注解+xml文件的整合方式, 编写了4个配置文件,分别是: 1.springmvc的配置文件 spring-mvc.xml 2.spring的配置文件 spring-service.xml 3.mybatis的配置文件 spring-dao.xml 4.spring整合3个框架的总配置文件 applicationContext.xml (无内容,仅需要导入以上三个配置文件即可) 话不多说上项目结构图: 建库建表代码: (注意一步一步执行sql语句,否则可能出现先执行插入语句而表不存在的错误!!!) CREATE DATABASE ` ssmbuild ` ; USE ` ssmbuild ` ; DROP TABLE IF EXISTS ` books ` ; CREATE TABLE ` books ` ( ` bookID ` INT ( 10 ) NOT NULL AUTO_INCREMENT , ` bookName ` VARCHAR ( 100 ) NOT NULL , ` bookCounts ` INT ( 11 ) NOT NULL , `

Servlet--HTTP请求、响应处理

老子叫甜甜 提交于 2020-02-03 03:17:59
1.HttpServletRequest   当HTTP转发给Web容器处理时,Web容器会收集相关信息,并产生HttpServletRequest对象,使用这个对象可以取得所有HTTP请求中的信息。   处理请求时最基本的就是取得请求参数,可以使用getQueryString()取得请求的查询字符串,使用getParameter()取得请求参数的值。   String username = request.getParameter("name");(获取请求参数name的值)。getParameter()方法返回的是String对象,如果传来的是如“123”这样的字符串值,而需要处理的是基本数据类型,可以使用Integer.parseInt()方法转换。其他常用方法有getParameterValues()和getParameterNames()。   String[] values = request.getParameterValues("param");(param参数有多个值)。   如果想知道请求中有多少个请求参数,可以使用getParameterNames()方法:   Enumeration e = request.getParameterNames();   while(e.hasMoreElements()) {     String param =

go初识

风流意气都作罢 提交于 2020-02-02 00:50:29
for循环 for i := 1; i < 5; i++ { fmt.Println(i*i) } ls := "agd" for _, arg := range ls{ fmt.Println(string(arg)) } 格式化输出 %d int 变量 %x, %o, %b 分别为 16 进制,8 进制,2 进制形式的 int %f, %g, %e 浮点数: 3.141593 3.141592653589793 3.141593e+00 %t 布尔变量:true 或 false %c rune (Unicode 码点),Go 语言里特有的 Unicode 字符类型 %s string %q 带双引号的字符串 "abc" 或 带单引号的 rune 'c' %v 会将任意变量以易读的形式打印出来 %T 打印变量的类型 %% 字符型百分比标志(%符号本身,没有其他操作) 运算符优先级 有些运算符拥有较高的优先级,二元运算符的运算方向均是从左至右。下表列出了所有运算符以及它们的优先级,由上至下代表优先级由高到低: 优先级 运算符 7 ^ ! 6 * / % << >> & &^ 5 + - | ^ 4 == != < <= >= > 3 <- 2 && 1 || 指针引用 func main() { var a int = 10 var b *int b = &a fmt

计算属性的复杂操作

不想你离开。 提交于 2020-01-31 21:26:48
< ! DOCTYPE html > < html lang = "en" > < head > < meta charset = "gbk" > < meta name = "viewport" content = "width=device-width, initial-scale=1.0" > < meta http - equiv = "X-UA-Compatible" content = "ie=edge" > < title > Document < / title > < / head > < body > < div id = "app" > < ! -- 涔︾殑鎬讳环鏍 ? -- > < h2 > 总价为 : { { totalPrice } } < / h2 > < / div > < / body > < script src = "../js/vue.js" > < / script > < script > const app = new Vue ( { el : '#app' , data : { books : [ { id : 110 , name : 'unix编译原理' , price : 100 } , { id : 111 , name : '浠g爜澶у叏' , price : 99 } , { id : 112 , name :

10 — 网上书城(2)— 添加图书

不问归期 提交于 2020-01-23 23:23:56
1 添加图书 form 表单 ——》提交到 Servlet ——》Service ——》 DAO ——》保存数据到数据库 ——》回到列表界面 list.jsp add.jsp action enctype = "application/x-www-form-urlencoded" 用于普通表单提交 enctype = "multipart/form-data" 用于有文件的表单提交 1.1 DAO package com . zbt . dao ; import com . zbt . model . Book ; import com . zbt . utils . C3P0Utils ; import org . apache . commons . dbutils . QueryRunner ; import org . apache . commons . dbutils . handlers . BeanListHandler ; import java . sql . SQLException ; import java . util . List ; import java . util . UUID ; public class BookDaoImpl { public List < Book > findAllBook ( ) throws

Java Persistence API中的FetchType LAZY和EAGER之间的区别?

我们两清 提交于 2020-01-16 02:37:23
我是Java Persistence API和 Hibernate 的新手。 Java Persistence API中的 FetchType.LAZY 和 FetchType.EAGER 什么区别? #1楼 我可能会考虑性能和内存利用率。 最大的不同是EAGER的提取策略允许无需会话就使用提取的数据对象。 为什么? 连接会话时,如果在对象中渴望标记数据,则将提取所有数据。 但是,在延迟加载策略的情况下,如果会话断开连接(在 session.close() 语句之后 session.close() ,则延迟加载标记对象不会检索数据。 休眠代理可以完成所有这些操作。 渴望策略使数据在关闭会话后仍然可用。 #2楼 默认情况下,对于所有集合和映射对象,提取规则为 FetchType.LAZY ,对于其他实例,遵循 FetchType.EAGER 策略。 简而言之, @OneToMany 和 @ManyToMany 关系不会 @ManyToMany 获取相关对象(集合和映射),但是检索操作是通过 @OneToOne 和 @ManyToOne 的字段进行级联的。 (礼貌:-objectdbcom) #3楼 @ drop-shadow(如果使用的是Hibernate),则可以在调用 getStudents() 方法时调用 Hibernate.initialize() : Public

Pandas 学习笔记-02_行/单元格

筅森魡賤 提交于 2020-01-10 13:06:27
import pandas as pd d = {'x':100,'y':200,'z':300} print(d.keys()) print(d.values()) print(d['x']) s1 = pd.Series(d) print(s1) print(s1.keys) print(s1.data) import pandas as pd L1 = [100,200,300] L2 = ['X','Y','Z'] s1 = pd.Series(L1,index = L2) print(s1) print(s1.index) import pandas as pd s1 = pd.Series([1,2,3],index = [1,2,3],name = 'A') s2 = pd.Series([10,20,30],index = [1,2,3],name = 'B') s3 = pd.Series([100,200,300],index = [1,2,3],name = 'C') df = pd.DataFrame({s1.name:s1,s2.name:s2,s3.name:s3}) df1 = pd.DataFrame([s1,s2,s3]) print(df) print(df1) //索引号不同步,则取并集 import pandas as pd s1 = pd

DRF框架简介(第一天)

不想你离开。 提交于 2020-01-10 02:24:34
1.drf框架全称 djangorestframework 1.如何安装drf框架: pip3 install djangorestframework #drf框架其实就是一个app称之为drf #django 使用的是MTV模式, 可以写fbv 或cbv #fbv是使用函数写的, 用的就是django原生的 #cbv是使用类来写的, 主要使用drf 以后用到drf框架就是写cbv模式 2. 如何使用drf框架 # 在django项目中设置settings文件内注册rest_framework INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'rest_framework', 'app01.apps.App01Config', ] 3. 在url层中使用cbv模式 urls配置文件的路由编写规范如下: from django.conf.urls import url from django.contrib import admin from app01 import

Android中XML解析

﹥>﹥吖頭↗ 提交于 2020-01-02 09:47:50
package com.example.thebroadproject; public class Book { private int id; private String name; private float price; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public float getPrice() { return price; } public void setPrice(float price) { this.price = price; } public void addPrice(){ price=price+1; } @Override public String toString() { return "id:" + id + ", name:" + name + ", price:" + price; } } 第一种:DOM。 DOM树所提供的随机访问方式给应用程序的开发带来了很大的灵活性,它可以任意地控制整个XML文档中的内容。然而

【Java】解析Java对XML的操作

不想你离开。 提交于 2020-01-02 09:47:41
目录结构: contents structure [+] 什么是XML 解析XML 使用DOM解析 使用SAX解析 使用PULL解析 使用dom4j解析xml dom4j的部分API 打印一个XML文件的全部内容 在dom4j中应用XPath解析XML 相关的部分API XPath的路径表达式 通配符 谓语 使用java写一个XMl文件 将一个带有书籍信息的List集合解析为XML文件 Schema和DTD的区别 参考文章 1 什么是XML XML(eXtensible markup language) 是一种可扩展的标记语言 ,即使可以自定义标签的语言。 2 解析XML 2.1 XML解析的方式 XML的解析方式有很多,光开源的就有十多种:如Xerces 、JDOM 、DOM4J 、XOM 、JiBX 、KXML 、XMLBeans 、jConfig 、XStream 、XJR 等。 但是最常用的还是sax、dom、pull、dom4j。 DOM:(Document Object Model,就是文档对象模型),是W3C组织推荐的处理XML的一种方式。使用该方式解析XML文档,会把文档中的所有元素,按照其出现的层次关系,在内存中构造出树形结构。因此对内存的压力大,解析熟读慢,优点就是可以遍历和修改节点的内容。 SAX:(Simple API for XML)