ssm注解

176.212.140.140
http://doc.canglaoshi.org/jdk6-docs/index.html
https://gitee.com/chengheng2022/framework-cgb2112.git
db 否 2 false true aa
//
读  输入   读入写出
写 输出
封装不用关心实现的细节
调用方法才叫多态,没调用叫向上造型

mysql -u root -proot

构造方法
1.限制对象的创建过程  private 类名(){};
2.构造方法给属性赋值     
3.要求创建对象时传入某些数据 ------没有无参构造只有有参构造 =为参数赋值

牛客网
https://598051fce4.live.polyv.cn/watch/542640   验证码:20210914
doc.canglaoshi.org/tts
tmooc.cn
final int num    不可变变量 
类与类之间的继承关系 单继承 
内部类中能直接访问外部类的成员     外部类名.this:当前对象的外部类对象
接口中方法是默认实现的和...的
拦截器书springmvc,过滤器是java原生的
先经过过滤,在经过拦截器
1.两同 
         1)方法名相同

        2)参数列表相同
2.两小
        1)派生类的方法返回值类型必须小于或等于超类方法的

               1.1) void和基本类型时必须一样

               1.2)引用类型时,小于或者等于     父类大,子类小

       2)  派生类方法抛出的异常方法必须小于或等于超类方法的
3.一大
        派生类的方法访问权限必须大于或等于超类方法的

        堆:存储new出来的对象(包括成员变量)   new出来的才放在堆    

        栈:局部变量(包括方法的参数)  ****引用类型中装的都是地址   基本类型放在栈装的值

        方法区:.class字节码文件(包括静态变量、所有方法)


public class A{
    A.Inner i1 = new A().new Inner();
    private class Inner{//成员内部类
    public void eat(){
        "不吃"
              }
    }
    public void get(){
    Inner o =  new Inner();//
    //外部类可以访问内部类的私有成员
    o.eat();
    }

}

-------------------------------------------------------------------------------------

spring创建对象和管理对象
通过spring创建对象的方法
spring框架给予DI实现了ioc,di是实现手段,ioc是实现目标


value给get,set方法   04 Jdbcconfig
autowired不给get,set方法

getBean()
- 在`SpringBeanFactory`类中的方法必须添加`@Bean`注解,其作用是使得Spring框架自动调用此方法,并管理此方法返回的结果
- 关于`getBean()`方法,此方法被重载了多次,典型的有:
 1. - `Object getBean(String beanName)`
    - 通过此方法,传入的`beanName`必须是有效的,否则将导致`NoSuchBeanDefinitionException`
  2.- `T getBean(Class<T> beanClass)`;
    - 使用此方法时,传入的类型在Spring中必须**有且仅有1个对象**,如果没有匹配类型的对象,将导致`NoSuchBeanDefinitionException`,
如果有2个,将导致`NoUniqueBeanDefinitionException`
  3.- `T getBean(String beanName, Class<T> beanClass)`
    - 此方法仍是根据传入的`beanName`获取对象,并且根据传入的`beanClass`进行类型转换
- 使用的`@Bean`注解可以传入`String`类型的参数,如果传入,则此注解对应的方法的返回结果的`beanName`就是`@Bean`注解中传入的`String`参数值

关于`@Autowired`的装配机制:

首先,会根据需要装配的数据的类型在Spring容器中查找匹配的Bean(对象)的数量,当数量为:

- 0个:判断`@Autowired`注解的`required`属性的值
  - 当`required=true`时:装配失败,启动项目时即报告异常
  - 当`required=false`时:放弃自动装配,不会报告异常
    - 后续当使用到此属性时,会出现`NullPointerException`
- 1个:直接装配,且装配成功
- 多个:自动尝试按照名称实现装配(属性的名称与Spring Bean的名称)
  - 存在与属性名称匹配的Spring Bean:装配成功
  - 不存在与属性名称匹配的Spring Bean:装配失败,启动项目时即报告异常

另外,使用`@Resource`注解也可以实现自动装配(此注解是`javax`包中的),其装配机制是先尝试根据名称来装配,如果失败,再尝试根据类型装配!

除了对属性装配以外,Spring的自动装配机制还可以表现出:如果**某个方法是由Spring框架自动调用的**(通常是构造方法,或`@Bean`方法,其它的方法中,如果参数有限制则专门说明),当这个方法被声明了参数时,Spring框架也会自动的尝试从容器找到匹配的对象,用于调用此方法!

SpringMVC
使用`@PathVariable`注解请求参数
在RESTful风格的URL中,大多是包含了某些请求参数的值,在使用Spring MVC框架时,当需要设计这类URL时,可以使用`{名称}`进行占位,并在处理请求的方法的参数列表中,使用`@PathVariable`注解请求参数,即可将占位符的实际值注入到请求参数中!

有必要的情况下,可以在以上各参数的声明之前添加`@RequestParam`注解,其作用主要有:

- 配置`name`属性:客户端将按照此配置的值提交请求参数,而不再是根据方法的参数名称来提交请求参数
- 配置`required`属性:是否要求客户端必须提交此请求参数,默认为`true`,如果不提交,则出现400错误,当设置为`false`时,如果不提交,则服务器端将此参数值视为`null`
- 配置`defaultValue`属性:配置此请求参数的默认值,当客户端没有提交此请求参数时,视为此值

另外,如果需要客户端提交的请求参数较多,可以将这些参数封装为自定义的数据类型,并将自定义的数据类型作为处理方法的参数即可,例如:

----------------------------------------------------

https://shimo.im/docs/2wAlXymj1OFz7EAP/ 
https://gitee.com/chengheng2022/vue-cgb2112.git  java -jar
npm config set registry https://registry.npm.taobao.org
npm config get registry 

https://mvnrepository.com/  maven仓库s

vue cli是单页面操作

then里面要用this就用箭头函数=>    tinyint   关联查询的结果是定制的
                  int

netstat -o -n -a | findstr :8080
taskkill /F /PID 7256

[]node_modules]
依赖改变就要执行 npm install 
cd change directory  cd\ 根目录  cd..上一级   cd  项目名
package.json  pack.json不要改

cd vue-project-01
npm run serve   
cd d:/Vue-Workspace/vue-project-02    cd:..\
npm i element-ui -S
// main.js import ElementUI from 'element-ui';
 import 'element-ui/lib/theme-chalk/index.css';
 Vue.use(ElementUI);

接口是一种规范,标准,类是一种

404
404状态码
意思是客户端找不到服务器的资源,服务器资源包括静态资源和动态资源
静态资源404:
检查请求的路径拼写是否正确
检查静态资源文件是否在static下的正确位置
如果路径和文件位置都没有问题,重新编译工程: Build->ReBuild  然后重启工程再测试

动态资源404:
检查请求的路径拼写是否正确
检查Controller类是否创建在了cn.tedu.工程名这个包下面  
检查@RequestMapping注解里面的路径是否正确,这里的路径必须以/开头 
如果路径和文件位置都没有问题,重新编译工程: Build->ReBuild  然后重启工程再测试

没有处理异常永远都是抛出异常
继承是父类快速创建子类的       构造方法和静态方法不存在继承中
类里面用到了就在类上面声明泛型,静态方法需要用到泛型就在静态方法上声明
高度相似的代码就用参数少的调用参数多的---JsonResult
 Ambiguous handler匹配到多个请求路径

字段  数据库字段名
列    查询出来的结果集中称为列,按照列名放在对象的属性中(列名和属性名一样才行)
属性
301/302  重定向
400请求参数的错误   (要你提交参数你不提交或不提交正常的参数)
401
403
404请求的资源不存在
405 请求方式错误
406   请求头不可接受  没加增强注解@Enablemvc
500 服务器内部出错(有异常),看控制台  有异常出错没有try-catch


页面修改 ctrl shift f9  build
网页刷新 shift f5

//                                        weibo_id数据库字段,weiboId实体类属性
    @Select("select * from comment where weibo_id=#{weiboId}")
created中调用vue才用this,其他用v

@RequestBody Product product  
当传的是自定义对象才加. 在vue中定义的对象
let v = new Vue({
    el: '#app',
    data() {
      return {
        product:{
          title:"",
          price:0,
          oldPrice:0,
          saleCount:0,
          categoryId:""
        },

-------------------------------------------------

sql---structured query language
数据库
show databases;
drop database db1;
show create database db1;
drop database db1;

在执行表相关和数据相关的SQL语句之前必须使用了某个数据库,
use db1;


create table emp(name varchar(20),age int) charset=utf8;
show tables;
show create table emp;
desc emp;   查看表字段
drop table emp;
rename table emp to person; 原 to 新
表字段相关
create table emp(name varchar(20));
alter table emp add name varchar(20);最后面添加
alter table emp add name varchar(20) first;最前面添加
alter table emp add name varchar(20) after id;某字段后添加
alter table emp  drop name;//删表字段
alter table emp change age gender varchar(10);原 新  改表字段

数据
insert into emp(id,name) values(1,"asdd"),(null,"asdfd");有自增时id传null就行
select * from emp;
update emp set name="gr" where id=1; 
delete from emp where name="dfslk";

where后面不可以写聚合函数
having和where类似,后面用聚合函数,写在group by后面

where
group by
having
order by
limit 

char  把多余空白去掉,相对固定长度的字符串,节省空间效率高,不用存信息长度.长度多少就直接读多少
varchar    补充不足的空白到长度,有一个额外的字节存信息长度(0-255)最多两字节留存长度信息,效率略低一点

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值