zoukankan      html  css  js  c++  java
  • ssm整合

    准备工作

    1. 添加依赖

     <dependencies>
         <!--Junit-->
         <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
             <version>4.12</version>
         </dependency>
         <!--数据库驱动-->
         <dependency>
             <groupId>mysql</groupId>
             <artifactId>mysql-connector-java</artifactId>
             <version>5.1.47</version>
         </dependency>
         <!-- 数据库连接池 -->
         <dependency>
             <groupId>com.mchange</groupId>
             <artifactId>c3p0</artifactId>
             <version>0.9.5.2</version>
         </dependency><!--Servlet - JSP -->
         <dependency>
             <groupId>javax.servlet</groupId>
             <artifactId>servlet-api</artifactId>
             <version>2.5</version>
         </dependency>
         <dependency>
             <groupId>javax.servlet.jsp</groupId>
             <artifactId>jsp-api</artifactId>
             <version>2.2</version>
         </dependency>
         <dependency>
             <groupId>javax.servlet</groupId>
             <artifactId>jstl</artifactId>
             <version>1.2</version>
         </dependency><!--Mybatis-->
         <dependency>
             <groupId>org.mybatis</groupId>
             <artifactId>mybatis</artifactId>
             <version>3.5.2</version>
         </dependency>
         <dependency>
             <groupId>org.mybatis</groupId>
             <artifactId>mybatis-spring</artifactId>
             <version>2.0.2</version>
         </dependency><!--Spring-->
         <dependency>
             <groupId>org.springframework</groupId>
             <artifactId>spring-webmvc</artifactId>
             <version>5.1.9.RELEASE</version>
         </dependency>
         <dependency>
             <groupId>org.springframework</groupId>
             <artifactId>spring-jdbc</artifactId>
             <version>5.1.9.RELEASE</version>
         </dependency>
     </dependencies>

    2. maven资源过滤(pom.xml)

     <build>
         <resources>
             <resource>
                 <directory>src/main/java</directory>
                 <includes>
                     <include>**/*.properties</include>
                     <include>**/*.xml</include>
                 </includes>
                 <filtering>false</filtering>
             </resource>
             <resource>
                 <directory>src/main/resources</directory>
                 <includes>
                     <include>**/*.properties</include>
                     <include>**/*.xml</include>
                 </includes>
                 <filtering>false</filtering>
             </resource>
         </resources>
     </build>

    3.完整目录

    pojo/service/comtroller/dao

    4. 新建 mybatis-config.xml

     <?xml version="1.0" encoding="UTF-8" ?>
     <!DOCTYPE configuration
             PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
             "http://mybatis.org/dtd/mybatis-3-config.dtd">
     <configuration></configuration>

    5.新建applicationContext.xml

     <?xml version="1.0" encoding="UTF-8"?>
     <beans xmlns="http://www.springframework.org/schema/beans"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xsi:schemaLocation="http://www.springframework.org/schema/beans
             http://www.springframework.org/schema/beans/spring-beans.xsd"></beans>

    2.mybatis层

    1.新建database.properties 数据库配置文件

     jdbc.driver=com.mysql.jdbc.Driver
     # useSSL属性为是否使用ssl安全链接,可能导致无法访问数据库
     jdbc.url=jdbc:mysql://localhost:3306/ssmbuild?useSSL=true&useUnicode=true&characterEncoding=utf8
     jdbc.username=root
     jdbc.password=123

    2.更改mybatis核心配置文件 mybatis-config.xml

     <?xml version="1.0" encoding="UTF-8" ?>
     <!DOCTYPE configuration
             PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
             "http://mybatis.org/dtd/mybatis-3-config.dtd">
     <configuration>
         
         <!--别名,为了使用model类时方便,不需要写全名-->
         <typeAliases>
             <package name="com.mvc.pojo"/>
         </typeAliases>
         
         <!--绑定mapper映射文件-->
         <mappers>
             <mapper resource="mappers/userMapper.xml"/>
         </mappers></configuration>

    3.实体类编写

    4.dao层编写,mapper接口

    5.编写对应的mapper.xml配置文件

     <?xml version="1.0" encoding="UTF-8" ?>
     <!DOCTYPE mapper
             PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
     <mapper>
     <select id="selectAllUser" resultType="User">
            SELECT * from user
         </select>
     </mapper>

    6.编写service层以及实现借口(service层调用dao层)

    Spring层

    1.编写spring-dao.xml配置文件,用来整合mybatis

     
    <?xml version="1.0" encoding="UTF-8"?>
     <beans xmlns="http://www.springframework.org/schema/beans"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xmlns:context="http://www.springframework.org/schema/context"
            xsi:schemaLocation="http://www.springframework.org/schema/beans
     http://www.springframework.org/schema/beans/spring-beans.xsd
     http://www.springframework.org/schema/context
     https://www.springframework.org/schema/context/spring-context.xsd"><!-- 配置整合mybatis -->
         <!-- 1.关联数据库文件 -->
         <context:property-placeholder location="classpath:database.properties"/><!-- 2.数据库连接池 -->
         <!--数据库连接池
     dbcp 半自动化操作 不能自动连接
     c3p0 自动化操作(自动的加载配置文件 并且设置到对象里面)
         -->
         <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
     <!-- 配置连接池属性 -->
     <property name="driverClass" value="${jdbc.driver}"/>
     <property name="jdbcUrl" value="${jdbc.url}"/>
     <property name="user" value="${jdbc.username}"/>
     <property name="password" value="${jdbc.password}"/><!-- c3p0连接池的私有属性 -->
     <property name="maxPoolSize" value="30"/>
     <property name="minPoolSize" value="10"/>
     <!-- 关闭连接后不自动commit -->
     <property name="autoCommitOnClose" value="false"/>
     <!-- 获取连接超时时间 -->
     <property name="checkoutTimeout" value="10000"/>
     <!-- 当获取连接失败重试次数 -->
     <property name="acquireRetryAttempts" value="2"/>
         </bean><!-- 3.配置SqlSessionFactory对象 -->
         <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
     <!-- 注入数据库连接池 -->
     <property name="dataSource" ref="dataSource"/>
     <!-- 配置MyBaties全局配置文件:mybatis-config.xml -->
     <property name="configLocation" value="classpath:mybatis-config.xml"/>
         </bean><!-- 4.配置扫描Dao接口包,动态实现Dao接口注入到spring容器中 -->
         <!--解释 : https://www.cnblogs.com/jpfss/p/7799806.html-->
         <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
     <!-- 注入sqlSessionFactory -->
     <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
     <!-- 给出需要扫描Dao接口包 -->
     <property name="basePackage" value="com.mvc.dao"/>
         </bean></beans>

    2.编写spring-service.xml配置文件,Spring整合service层

     <?xml version="1.0" encoding="UTF-8"?>
     <beans xmlns="http://www.springframework.org/schema/beans"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xmlns:context="http://www.springframework.org/schema/context"
            xsi:schemaLocation="http://www.springframework.org/schema/beans
         http://www.springframework.org/schema/beans/spring-beans.xsd
         http://www.springframework.org/schema/context
         http://www.springframework.org/schema/context/spring-context.xsd"><!-- 扫描service相关的bean -->
         <context:component-scan base-package="com.mvc.service" /><!--BookServiceImpl注入到IOC容器中-->
         <bean id="BookServiceImpl" class="com.mvc.service.UserServiceImpl">
     <property name="userMapper" ref="userMapper"/>
         </bean><!-- 配置事务管理器 -->
         <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
     <!-- 注入数据库连接池 -->
     <property name="dataSource" ref="dataSource" />
         </bean></beans>

    MVC层

    1.web.xml

      
    <!--DispatcherServlet-->
         <servlet>
             <servlet-name>DispatcherServlet</servlet-name>
             <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
             <init-param>
                 <param-name>contextConfigLocation</param-name>
                 <param-value>classpath:applicationContext.xml</param-value>
             </init-param>
             <load-on-startup>1</load-on-startup>
         </servlet>
         <servlet-mapping>
             <servlet-name>DispatcherServlet</servlet-name>
             <url-pattern>/</url-pattern>
         </servlet-mapping><!--encodingFilter-->
         <filter>
             <filter-name>encodingFilter</filter-name>
             <filter-class>
                org.springframework.web.filter.CharacterEncodingFilter
             </filter-class>
             <init-param>
                 <param-name>encoding</param-name>
                 <param-value>utf-8</param-value>
             </init-param>
         </filter>
         <filter-mapping>
             <filter-name>encodingFilter</filter-name>
             <url-pattern>/*</url-pattern>
         </filter-mapping>
         
         <!--Session过期时间-->
         <session-config>
             <session-timeout>15</session-timeout>
         </session-config>

     

    2.编写spring-mvc.xml配置文件, Spring整合MVC层

     <?xml version="1.0" encoding="UTF-8"?>
     <beans xmlns="http://www.springframework.org/schema/beans"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xmlns:context="http://www.springframework.org/schema/context"
            xmlns:mvc="http://www.springframework.org/schema/mvc"
            xsi:schemaLocation="http://www.springframework.org/schema/beans
         http://www.springframework.org/schema/beans/spring-beans.xsd
         http://www.springframework.org/schema/context
         http://www.springframework.org/schema/context/spring-context.xsd
         http://www.springframework.org/schema/mvc
         https://www.springframework.org/schema/mvc/spring-mvc.xsd"><!-- 配置SpringMVC -->
         <!-- 1.开启SpringMVC注解驱动 -->
         <mvc:annotation-driven />
         <!-- 2.静态资源默认servlet配置-->
         <mvc:default-servlet-handler/><!-- 3.配置jsp 显示ViewResolver视图解析器 -->
         <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
             <property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />
             <property name="prefix" value="/WEB-INF/jsp/" />
             <property name="suffix" value=".jsp" />
         </bean><!-- 4.扫描web相关的bean -->
         <context:component-scan base-package="com.mvc.controller" /></beans>

    3.配置整合文件applicaitonContext.xml

     <?xml version="1.0" encoding="UTF-8"?>
     <beans xmlns="http://www.springframework.org/schema/beans"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xsi:schemaLocation="http://www.springframework.org/schema/beans
             http://www.springframework.org/schema/beans/spring-beans.xsd"><import resource="spring-dao.xml"/>
         <import resource="spring-service.xml"/>
         <import resource="spring-mvc.xml"/>
         
     </beans>

    事务

      <tx:advice id="txAdvice" transaction-manager="transactionManager">
            <tx:attributes>
                <tx:method name="add" propagation="REQUIRED"/>
                <tx:method name="delete" propagation="REQUIRED"/>
                <tx:method name="update" propagation="REQUIRED"/>
                <tx:method name="query" read-only="true"/>
                <tx:method name="*" propagation="REQUIRED"/>
            </tx:attributes>
        </tx:advice><aop:config>
            <aop:pointcut id="txPointCut" expression="execution(* com.tedu.dao.*.*())"/>
            <aop:advisor advice-ref="txAdvice" pointcut-ref="txPointCut"/>
        </aop:config>

    准备工作

    1. 添加依赖

     <dependencies>
         <!--Junit-->
         <dependency>
             <groupId>junit</groupId>
             <artifactId>junit</artifactId>
             <version>4.12</version>
         </dependency>
         <!--数据库驱动-->
         <dependency>
             <groupId>mysql</groupId>
             <artifactId>mysql-connector-java</artifactId>
             <version>5.1.47</version>
         </dependency>
         <!-- 数据库连接池 -->
         <dependency>
             <groupId>com.mchange</groupId>
             <artifactId>c3p0</artifactId>
             <version>0.9.5.2</version>
         </dependency>
     
         <!--Servlet - JSP -->
         <dependency>
             <groupId>javax.servlet</groupId>
             <artifactId>servlet-api</artifactId>
             <version>2.5</version>
         </dependency>
         <dependency>
             <groupId>javax.servlet.jsp</groupId>
             <artifactId>jsp-api</artifactId>
             <version>2.2</version>
         </dependency>
         <dependency>
             <groupId>javax.servlet</groupId>
             <artifactId>jstl</artifactId>
             <version>1.2</version>
         </dependency>
     
         <!--Mybatis-->
         <dependency>
             <groupId>org.mybatis</groupId>
             <artifactId>mybatis</artifactId>
             <version>3.5.2</version>
         </dependency>
         <dependency>
             <groupId>org.mybatis</groupId>
             <artifactId>mybatis-spring</artifactId>
             <version>2.0.2</version>
         </dependency>
     
         <!--Spring-->
         <dependency>
             <groupId>org.springframework</groupId>
             <artifactId>spring-webmvc</artifactId>
             <version>5.1.9.RELEASE</version>
         </dependency>
         <dependency>
             <groupId>org.springframework</groupId>
             <artifactId>spring-jdbc</artifactId>
             <version>5.1.9.RELEASE</version>
         </dependency>
     </dependencies>

    2. maven资源过滤(pom.xml)

     <build>
         <resources>
             <resource>
                 <directory>src/main/java</directory>
                 <includes>
                     <include>**/*.properties</include>
                     <include>**/*.xml</include>
                 </includes>
                 <filtering>false</filtering>
             </resource>
             <resource>
                 <directory>src/main/resources</directory>
                 <includes>
                     <include>**/*.properties</include>
                     <include>**/*.xml</include>
                 </includes>
                 <filtering>false</filtering>
             </resource>
         </resources>
     </build>

    3.完整目录

    pojo/service/comtroller/dao

    4. 新建 mybatis-config.xml

     <?xml version="1.0" encoding="UTF-8" ?>
     <!DOCTYPE configuration
             PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
             "http://mybatis.org/dtd/mybatis-3-config.dtd">
     <configuration>
     
     </configuration>

    5.新建applicationContext.xml

     <?xml version="1.0" encoding="UTF-8"?>
     <beans xmlns="http://www.springframework.org/schema/beans"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xsi:schemaLocation="http://www.springframework.org/schema/beans
             http://www.springframework.org/schema/beans/spring-beans.xsd">
     
     </beans>

    2.mybatis层

    1.新建database.properties 数据库配置文件

     jdbc.driver=com.mysql.jdbc.Driver
     # useSSL属性为是否使用ssl安全链接,可能导致无法访问数据库
     jdbc.url=jdbc:mysql://localhost:3306/ssmbuild?useSSL=true&useUnicode=true&characterEncoding=utf8
     jdbc.username=root
     jdbc.password=123

    2.更改mybatis核心配置文件 mybatis-config.xml

     <?xml version="1.0" encoding="UTF-8" ?>
     <!DOCTYPE configuration
             PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
             "http://mybatis.org/dtd/mybatis-3-config.dtd">
     <configuration>
         
         <!--别名,为了使用model类时方便,不需要写全名-->
         <typeAliases>
             <package name="com.mvc.pojo"/>
         </typeAliases>
         
         <!--绑定mapper映射文件-->
         <mappers>
             <mapper resource="mappers/userMapper.xml"/>
         </mappers>
     
     </configuration>

    3.实体类编写

    4.dao层编写,mapper接口

    5.编写对应的mapper.xml配置文件

     <?xml version="1.0" encoding="UTF-8" ?>
     <!DOCTYPE mapper
             PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
     <mapper>
     <select id="selectAllUser" resultType="User">
            SELECT * from user
         </select>
     </mapper>

    6.编写service层以及实现借口(service层调用dao层)

    Spring层

    1.编写spring-dao.xml配置文件,用来整合mybatis

     <?xml version="1.0" encoding="UTF-8"?>
     <beans xmlns="http://www.springframework.org/schema/beans"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xmlns:context="http://www.springframework.org/schema/context"
            xsi:schemaLocation="http://www.springframework.org/schema/beans
     http://www.springframework.org/schema/beans/spring-beans.xsd
     http://www.springframework.org/schema/context
     https://www.springframework.org/schema/context/spring-context.xsd">
     
         <!-- 配置整合mybatis -->
         <!-- 1.关联数据库文件 -->
         <context:property-placeholder location="classpath:database.properties"/>
     
         <!-- 2.数据库连接池 -->
         <!--数据库连接池
     dbcp 半自动化操作 不能自动连接
     c3p0 自动化操作(自动的加载配置文件 并且设置到对象里面)
         -->
         <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
     <!-- 配置连接池属性 -->
     <property name="driverClass" value="${jdbc.driver}"/>
     <property name="jdbcUrl" value="${jdbc.url}"/>
     <property name="user" value="${jdbc.username}"/>
     <property name="password" value="${jdbc.password}"/>
     
     <!-- c3p0连接池的私有属性 -->
     <property name="maxPoolSize" value="30"/>
     <property name="minPoolSize" value="10"/>
     <!-- 关闭连接后不自动commit -->
     <property name="autoCommitOnClose" value="false"/>
     <!-- 获取连接超时时间 -->
     <property name="checkoutTimeout" value="10000"/>
     <!-- 当获取连接失败重试次数 -->
     <property name="acquireRetryAttempts" value="2"/>
         </bean>
     
         <!-- 3.配置SqlSessionFactory对象 -->
         <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
     <!-- 注入数据库连接池 -->
     <property name="dataSource" ref="dataSource"/>
     <!-- 配置MyBaties全局配置文件:mybatis-config.xml -->
     <property name="configLocation" value="classpath:mybatis-config.xml"/>
         </bean>
     
         <!-- 4.配置扫描Dao接口包,动态实现Dao接口注入到spring容器中 -->
         <!--解释 : https://www.cnblogs.com/jpfss/p/7799806.html-->
         <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
     <!-- 注入sqlSessionFactory -->
     <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"/>
     <!-- 给出需要扫描Dao接口包 -->
     <property name="basePackage" value="com.mvc.dao"/>
         </bean>
     
     </beans>

    2.编写spring-service.xml配置文件,Spring整合service层

     <?xml version="1.0" encoding="UTF-8"?>
     <beans xmlns="http://www.springframework.org/schema/beans"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xmlns:context="http://www.springframework.org/schema/context"
            xsi:schemaLocation="http://www.springframework.org/schema/beans
         http://www.springframework.org/schema/beans/spring-beans.xsd
         http://www.springframework.org/schema/context
         http://www.springframework.org/schema/context/spring-context.xsd">
     
         <!-- 扫描service相关的bean -->
         <context:component-scan base-package="com.mvc.service" />
     
         <!--BookServiceImpl注入到IOC容器中-->
         <bean id="BookServiceImpl" class="com.mvc.service.UserServiceImpl">
     <property name="userMapper" ref="userMapper"/>
         </bean>
     
         <!-- 配置事务管理器 -->
         <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
     <!-- 注入数据库连接池 -->
     <property name="dataSource" ref="dataSource" />
         </bean>
     
     </beans>

    MVC层

    1.web.xml

      <!--DispatcherServlet-->
         <servlet>
             <servlet-name>DispatcherServlet</servlet-name>
             <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
             <init-param>
                 <param-name>contextConfigLocation</param-name>
                 <param-value>classpath:applicationContext.xml</param-value>
             </init-param>
             <load-on-startup>1</load-on-startup>
         </servlet>
         <servlet-mapping>
             <servlet-name>DispatcherServlet</servlet-name>
             <url-pattern>/</url-pattern>
         </servlet-mapping>
     
         <!--encodingFilter-->
         <filter>
             <filter-name>encodingFilter</filter-name>
             <filter-class>
                org.springframework.web.filter.CharacterEncodingFilter
             </filter-class>
             <init-param>
                 <param-name>encoding</param-name>
                 <param-value>utf-8</param-value>
             </init-param>
         </filter>
         <filter-mapping>
             <filter-name>encodingFilter</filter-name>
             <url-pattern>/*</url-pattern>
         </filter-mapping>
         
         <!--Session过期时间-->
         <session-config>
             <session-timeout>15</session-timeout>
         </session-config>

     

    2.编写spring-mvc.xml配置文件, Spring整合MVC层

     <?xml version="1.0" encoding="UTF-8"?>
     <beans xmlns="http://www.springframework.org/schema/beans"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xmlns:context="http://www.springframework.org/schema/context"
            xmlns:mvc="http://www.springframework.org/schema/mvc"
            xsi:schemaLocation="http://www.springframework.org/schema/beans
         http://www.springframework.org/schema/beans/spring-beans.xsd
         http://www.springframework.org/schema/context
         http://www.springframework.org/schema/context/spring-context.xsd
         http://www.springframework.org/schema/mvc
         https://www.springframework.org/schema/mvc/spring-mvc.xsd">
     
         <!-- 配置SpringMVC -->
         <!-- 1.开启SpringMVC注解驱动 -->
         <mvc:annotation-driven />
         <!-- 2.静态资源默认servlet配置-->
         <mvc:default-servlet-handler/>
     
         <!-- 3.配置jsp 显示ViewResolver视图解析器 -->
         <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
             <property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />
             <property name="prefix" value="/WEB-INF/jsp/" />
             <property name="suffix" value=".jsp" />
         </bean>
     
         <!-- 4.扫描web相关的bean -->
         <context:component-scan base-package="com.mvc.controller" />
     
     </beans>

    3.配置整合文件applicaitonContext.xml

     <?xml version="1.0" encoding="UTF-8"?>
     <beans xmlns="http://www.springframework.org/schema/beans"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xsi:schemaLocation="http://www.springframework.org/schema/beans
             http://www.springframework.org/schema/beans/spring-beans.xsd">
     
         <import resource="spring-dao.xml"/>
         <import resource="spring-service.xml"/>
         <import resource="spring-mvc.xml"/>
         
     </beans>
      <tx:advice id="txAdvice" transaction-manager="transactionManager">
            <tx:attributes>
                <tx:method name="add" propagation="REQUIRED"/>
                <tx:method name="delete" propagation="REQUIRED"/>
                <tx:method name="update" propagation="REQUIRED"/>
                <tx:method name="query" read-only="true"/>
                <tx:method name="*" propagation="REQUIRED"/>
            </tx:attributes>
        </tx:advice>
     
        <aop:config>
            <aop:pointcut id="txPointCut" expression="execution(* com.tedu.dao.*.*())"/>
            <aop:advisor advice-ref="txAdvice" pointcut-ref="txPointCut"/>
        </aop:config>

     

     

  • 相关阅读:
    封装成帧、帧定界、帧同步、透明传输(字符计数法、字符串的首尾填充法、零比特填充的首尾标志法、违规编码法)
    计算机网络之数据链路层的基本概念和功能概述
    物理层设备(中继器、集线器)
    计算机网络之传输介质(双绞线、同轴电缆、光纤、无线电缆、微波、激光、红外线)
    计算机网络之编码与调制
    0953. Verifying an Alien Dictionary (E)
    1704. Determine if String Halves Are Alike (E)
    1551. Minimum Operations to Make Array Equal (M)
    0775. Global and Local Inversions (M)
    0622. Design Circular Queue (M)
  • 原文地址:https://www.cnblogs.com/liqbk/p/12774068.html
Copyright © 2011-2022 走看看