精华内容
下载资源
问答
  • MyBatis 是支持普通 SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis 消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis 使用简单的 XML或注解用于配置和原始映射,将接口和 Java 的POJ

        

      小编也是忙里偷闲的学会java,用吃饭和睡觉前的时间看完了一个Mybatis的介绍,手痒痒的就练了练,学习的时间也不长,两天时间搭了一个框架,分享给大家。

      MyBatis 是支持普通 SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis 消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis 使用简单的 XML或注解用于配置和原始映射,将接口和 Java 的POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。之前学过了Hibernate,最近抽空学习了一下Mybatis,在两者直接做了简单的对比。


    【Hibernate与Mybatis简单对比】



    1.从查询语句上的区别。


      之前用Hibernate开发,都是用封装好的语句,完全没有sql的影子,都是调用的方法。但是如果是一些稍微复杂的sql,Mybatis会是一个好的选择。所以,从查询效率上来说,对于简单的查询,建议用Hibernate封装好的,这样 可以节省很多时间,如果你不建议会返回全部字段的话。。那么大一些的项目,或许会用到复杂的sql语句,Mybatis动手写还调整方便,看着也知道自己写的是个啥,不错的选择。


    2.从对象管理机制角度考虑。


      用Hibernate 是完整的对象/关系映射,它提供了对象状态管理,使开发者不再需要理会底层数据库系统的细节。这样就是面向对象的方法把数据持久化到数据库中,不用管数据库里面的字段之类的内容。Hibernate也可以自己写SQL来指定需要查询的字段,但这样就破坏了Hibernate开发的简洁性。而Mybatis的SQL是手动编写的,所以可以按需求指定查询的字段。

      resultMap是MyBatis中最强大的元素,你可以比使用JDBC调用结果集省掉90%的代码。也可以让你做许多JDBC不支持的事。事实上,要写一个等同类似与交互的映射的复杂的语句。可能要上千行的代码。ResultMap的目的,就是这样简单的语句而不需要多余的结果映射。


    3.缓存机制。


      Hibernate中提供了两级Cache,第一级别的缓存是Session级别的缓存,它是属于事务范围的缓存。这一级别的缓存由hibernate管理的,一般情况下无需进行干预;第二级别的缓存是SessionFactory级别的缓存,它是属于进程范围或群集范围的缓存。这一级别的缓存可以进行配置和更改,并且可以动态加载和卸载,属于多事务级别,要防止事务并发性。缓存是以map的形式进行存储的(key-id,value-object)。

      在Mybatis中,一级缓存是基于 PerpetualCache(mybatis自带)的 HashMap 本地缓存,作用范围为session,所以当session commit或close后,缓存就会被清空。二级缓存默认也是基于 PerpetualCache,但是可以为其制定存储源。一级缓存缓存的是SQL语句,而二级缓存缓存的是结果对象。

      Hibernate的二级缓存配置在SessionFactory生成的配置文件中进行详细配置,然后再在具体的表-对象映射中配置是那种缓存。MyBatis的二级缓存配置都是在每个具体的表-对象映射中进行详细配置,这样针对不同的表可以自定义不同的缓存机制。




    【JSP + Spring + Mybatis+Mysql 框架搭建】



    1.建立一个web工程,引入需要的jar包,spring、mybatis和mysql




    2.web.xml 配置 


    <span style="font-family:KaiTi_GB2312;font-size:18px;"><?xml version="1.0" encoding="UTF-8"?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
      <display-name>MyBatis_Spring3_Jsp</display-name>
      <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
      </welcome-file-list>
      <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>
        <init-param>
          <param-name>forceEncoding</param-name>
          <param-value>true</param-value>
        </init-param>
      </filter>
      <filter-mapping>
        <filter-name>encodingFilter</filter-name>
        <url-pattern>/*</url-pattern>
      </filter-mapping>
      <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath*:config/applicationContext.xml</param-value>
      </context-param>
      <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
      </listener>
      <listener>
        <listener-class>
    			org.springframework.web.context.ContextCleanupListener</listener-class>
      </listener>
      <servlet>
        <servlet-name>mvc-dispatcher</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
      </servlet>
      <servlet-mapping>
        <servlet-name>mvc-dispatcher</servlet-name>
        <url-pattern>/</url-pattern>
      </servlet-mapping>
     
    </web-app></span>


    3. mvc-dispatcher-servlet.xml 文件配置


    <span style="font-family:KaiTi_GB2312;font-size:18px;"><beans xmlns="http://www.springframework.org/schema/beans"
    	xmlns:context="http://www.springframework.org/schema/context"
    	xmlns:mvc="http://www.springframework.org/schema/mvc" 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-3.0.xsd
            http://www.springframework.org/schema/context 
            http://www.springframework.org/schema/context/spring-context-3.0.xsd
            http://www.springframework.org/schema/mvc
            http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd">
    
    	<context:component-scan base-package="com.yihaomen.controller" />
    	<mvc:annotation-driven />
    	
    	<mvc:resources mapping="/static/**" location="/WEB-INF/static/"/>  
        <mvc:default-servlet-handler/>  
         
    	<bean
    		class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    		<property name="prefix">
    			<value>/WEB-INF/pages/</value>
    		</property>
    		<property name="suffix">
    			<value>.jsp</value>
    		</property>
    	</bean>
    
    </beans>
    
    
    </span>


    4. spring applicationContext.XML文件配置


    <span style="font-family:KaiTi_GB2312;font-size:18px;"><?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:aop="http://www.springframework.org/schema/aop" 
        xmlns:tx="http://www.springframework.org/schema/tx" 
        xmlns:context="http://www.springframework.org/schema/context" 
        xmlns:p="http://www.springframework.org/schema/p" 
        xsi:schemaLocation="  
                http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd  
                http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd  
                http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd  
                http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.0.xsd  
                http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd"  
                default-autowire="byName" default-lazy-init="false"> 
        
     <!--本示例采用DBCP连接池,应预先把DBCP的jar包复制到工程的lib目录下。 -->   
        <context:property-placeholder    location="classpath:/config/database.properties" />
            
        <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
            destroy-method="close" p:driverClassName="com.mysql.jdbc.Driver"
            p:url="jdbc:mysql://127.0.0.1:3307/mybatis?characterEncoding=utf8" 
            p:username="root" p:password="123456"
            p:maxActive="10" p:maxIdle="10">
        </bean>
        
        <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
          <property name="dataSource" ref="dataSource" />
        </bean>
        
         
      <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> 
         <!--dataSource属性指定要用到的连接池--> 
         <property name="dataSource" ref="dataSource"/> 
         <!--configLocation属性指定mybatis的核心配置文件--> 
         <property name="configLocation" value="classpath:config/Configuration.xml" /> 
         <!-- 所有配置的mapper文件 -->
         <property name="mapperLocations" value="classpath*:com/yihaomen/mapper/*.xml" />
      </bean> 
      
      <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
         <property name="basePackage" value="com.yihaomen.inter" />     
      </bean>
    </beans> </span>


    5. 添加Mybatis的配置文件configuration.xml


    <span style="font-family:KaiTi_GB2312;font-size:18px;"><?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>
        <typeAliases> 
            <typeAlias alias="User" type="com.yihaomen.model.User"/>
            <typeAlias alias="Article" type="com.yihaomen.model.Article"/>  
        </typeAliases> 
    	
    	<mappers>
    	    <mapper resource="com/yihaomen/mapper/User.xml"/>
    	</mappers>
    	
    	
    </configuration></span>


    5. 编写controller 类,model类 等


    UserController类:


    <span style="font-family:KaiTi_GB2312;font-size:18px;">package com.yihaomen.controller;
    import java.util.List;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.servlet.ModelAndView;
    import com.yihaomen.inter.IUserOperation;
    import com.yihaomen.model.Article;
    import com.yihaomen.model.User;
    
    @Controller
    @RequestMapping("/article")
    public class UserController {
        @Autowired
        IUserOperation userMapper;
    
        @RequestMapping("/list")
        public ModelAndView listall(HttpServletRequest request,HttpServletResponse response){
            List<Article> articles=userMapper.getUserArticles(1); 
            ModelAndView mav=new ModelAndView("list");
            mav.addObject("articles",articles);
            return mav;
    	}
    }
    </span>


    接口类:


    <span style="font-family:KaiTi_GB2312;font-size:18px;">package com.yihaomen.inter;
    
    import java.util.List;
    
    import com.yihaomen.model.Article;
    import com.yihaomen.model.User;
    
    public interface IUserOperation {
        
    	public User selectUserByID(int id);
    	public List<User> selectUsers(String userName);	
    	public void addUser(User user);
    	public void updateUser(User user);
    	public void deleteUser(int id);
    	
    	public List<Article> getUserArticles(int id);
    	
    }
    </span>



     user.xml(sql写在这里)


    <span style="font-family:KaiTi_GB2312;font-size:18px;"><?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 namespace="com.yihaomen.inter.IUserOperation">
    
    	
    	<!-- 为了返回list 类型而定义的returnMap -->
    	<resultMap type="User" id="resultListUser">
            <id column="id" property="id" />
            <result column="userName" property="userName" />
            <result column="userAge" property="userAge" />
            <result column="userAddress" property="userAddress" />
        </resultMap>
    	
    
    	<select id="getUserArticles" parameterType="int" resultMap="resultUserArticleList">
    	   select user.id,user.userName,user.userAddress,article.id aid,article.title,article.content from user,article 
    	          where user.id=article.userid and user.id=#{id}
    	</select>
    	
    
        
    </mapper></span>


    model类:


    <span style="font-family:KaiTi_GB2312;font-size:18px;">package com.yihaomen.model;
    
    public class Article {
    	
    	private int id;
    	private User user;
    	private String title;
    	private String content;
    	
    	public int getId() {
    		return id;
    	}
    	public void setId(int id) {
    		this.id = id;
    	}
    	
    	public User getUser() {
    		return user;
    	}
    	public void setUser(User user) {
    		this.user = user;
    	}
    	public String getTitle() {
    		return title;
    	}
    	public void setTitle(String title) {
    		this.title = title;
    	}
    	public String getContent() {
    		return content;
    	}
    	public void setContent(String content) {
    		this.content = content;
    	}
    
    }
    </span>


    6. JSP

    <span style="font-family:KaiTi_GB2312;font-size:18px;"><%@ page language="java" contentType="text/html; charset=UTF-8"
    	pageEncoding="UTF-8"%>
    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>test</title>
    </head>
    <body>
    <c:forEach items="${articles}" var="item">  
            ${item.id }--${item.title }--${item.content }<br />
        </c:forEach>
    </body>
    </html>
    </span>



    运行效果:







    【总结】


    1)每个MyBatis应用程序主要都是使用SqlSessionFactory实例的,一个SqlSessionFactory实例可以通过SqlSessionFactoryBuilder获得。SqlSessionFactoryBuilder可以从一个xml配置文件或者一个预定义的配置类的实例获得。用xml文件构建SqlSessionFactory实例是非常简单的事情。


    2)看再多的书,还是动手去做吧,这样理解的深刻。总有一天会熟悉它,时间的问题。




    展开全文
  • golang优秀开源框架和库

    千次阅读 2019-04-06 18:59:38
    go-fixtures - 用于Golang优秀的内置数据库/ sql库的Django风格的灯具。 gondolier - Gondolier是一个使用结构自动迁移数据库模式的库。 goose - 数据库迁移工具。您可以通过创建增量SQL或Go脚本来管理数据库...

    作者:承诺一时的美丽

    链接:https://www.jianshu.com/u/6719426bf97e

    來源:简书

    音频和音乐

    用于操纵音频的库。

    flac - Native Go FLAC解码器。

    flac - Native Go FLAC解码器。

    gaad - Native Go AAC比特流解析器。

    go-sox - 用于go的libsox绑定。

    go_mediainfo - 用于go的libmediainfo绑定。

    gosamplerate - 用于go的libsamplerate绑定。

    id3v2 - Go的快速稳定的ID3解析和编写库。

    malgo - 迷你音频库。

    minimp3 - 轻量级MP3解码器库。

    mix - 用于音乐应用的基于序列的Go-native音频混音器。

    mp3 - Native Go MP3解码器。

    音乐理论 - Go中的音乐理论模型。

    PortAudio - 用于PortAudio音频I / O库的绑定。

    portmidi - 为PortMidi绑定绑定。

    taglib - 用于taglib的绑定。

    vorbis - “Native”Go Vorbis解码器(使用CGO,但没有依赖关系)。

    波形 - Go包能够从音频流生成波形图像。

    身份验证和OAuth

    用于实现认证方案的库。

    authboss - 用于Web的模块化身份验证系统。它试图删除尽可能多的样板和“硬件”,以便每次在Go中启动新的Web项目时,您都可以插入,配置和开始构建应用程序,而无需每次都构建一个身份验证系统。

    casbin - 支持ACL,RBAC,ABAC等访问控制模型的授权库。

    cookiestxt - 提供cookies.txt文件格式的解析器。

    Go-AWS-Auth - AWS(亚马逊网络服务)请求签名库。

    go-jose - 完全实现JOSE工作组的JSON Web令牌,JSON Web签名和JSON Web加密规范。

    go-oauth2-server - 用Golang编写的独立,符合规范的OAuth2服务器。

    gologin - 用于登录OAuth1和OAuth2身份验证提供程序的可链接处理程序。

    gorbac - 在Golang中提供基于角色的轻量级访问控制(RBAC)实现。

    goth - 提供了一种简单,干净,惯用的方式来使用OAuth和OAuth2。开箱即用处理多个提供商。

    httpauth - HTTP身份验证中间件。

    jwt - 清晰易用的JSON Web令牌(JWT)实现。

    jwt-auth - 用于Golang http服务器的JWT中间件,具有许多配置选项。

    jwt-go - JSON Web令牌(JWT)的Golang实现。

    loginsrv - 具有可插拔后端的JWT登录微服务,如OAuth2(Github),htpasswd,osiam。

    oauth2 - goauth2的继承者。JWT,Google API,计算引擎和App Engine支持附带的通用OAuth 2.0软件包。

    osin - Golang OAuth2服务器库。

    permissions2 - 用于跟踪用户,登录状态和权限的库。使用安全cookie和bcrypt。

    securecookie - 高效的安全cookie编码/解码。

    session - 进行Web服务器的会话管理(包括对Google App Engine的支持 - GAE)。

    sessiongate-go - 使用SessionGate Redis模块进行会话管理。

    sessions - 为http服务器提供简单,高性能,高度可定制的会话服务。

    yubigo - Yubikey客户端软件包,提供简单的API,将Yubico Yubikey集成到go应用程序中。

    命令行

    标准CLI

    用于构建标准或基本命令行应用程序的库。

    argparse - 受Python的argparse模块启发的命令行参数解析器。

    argv - 使用bash语法将库命令行字符串拆分为参数数组。

    cli - 基于golang结构标记的功能丰富且易于使用的命令行包。

    cli - 用于在Go中构建命令行界面的简单而完整的API。

    cli-init - 开始构建Golang命令行应用程序的简便方法。

    高潮 - 以Go命令的精神,以“人脸”替代CLI。

    cobra - 现代Go CLI交互的指挥官。

    commandeer - 开发人员友好的CLI应用程序:根据结构字段和标记设置标志,默认值和用法。

    完成 - 在Go + Go命令bash完成中写入bash完成。

    docopt.go - 命令行参数解析器,它会让你微笑。

    drive - 命令行的Google Drive客户端。

    env - 结构的基于标记的环境配置。

    flag - Go支持子命令的简单但功能强大的命令行选项解析库。

    go-arg - Go中基于Struct的参数解析。

    go-flags - go命令行选项解析器。

    kingpin - 支持子命令的命令行和标志解析器。

    liner - 用于命令行界面的类似readline的库。

    mitchellh / cli - 用于实现命令行界面的库。

    mow.cli - 使用复杂的标志和参数解析和验证来构建用于构建CLI应用程序的库。

    pflag - Go的标志包的替代品,实现POSIX / GNU样式 - 标志。

    readline - 纯粹的golang实现,在MIT许可下提供GNU-Readline中的大多数功能。

    sflags - 用于flag,urfave / cli,pflag,cobra,kingpin和其他库的基于struct的标志生成器。

    strumt - 图书馆创建提示链。

    ukautz / clif - 小命令行界面框架。

    urfave / cli - 用于在Go(以前的codegangsta / cli)中构建命令行应用程序的简单,快速和有趣的包。

    wlog - 支持跨平台颜色和并发的简单日志记录接口。

    wmenu - 易于使用的cli应用程序菜单结构,提示用户做出选择。

    高级控制台UI

    用于构建控制台应用程序和控制台用户界面的库。

    极光 - 支持fmt.Printf / Sprintf的ANSI终端颜色。

    chalk - 用于美化终端/控制台输出的直观包装。

    color - 用于彩色终端输出的多功能包装。

    colourize - 在终端中使用ANSI颜色文本库。

    go-ataman - Go库,用于在终端中呈现ANSI彩色文本模板。

    go-colorable - Windows的着名作家。

    go-colortext - 转到终端的颜色输出库。

    go-isatty - golang的isatty。

    gocui - Minimalist Go库旨在创建控制台用户界面。

    gommon / color - 样式终端文本。

    mpb - 终端应用程序的多进度条。

    progressbar - 适用于每个操作系统的基本线程安全进度条。

    termbox-go - Termbox是一个用于创建跨平台基于文本的界面的库。

    termtables - 用于简单ASCII表生成的Ruby库终端表的端口,以及提供markdown和HTML输出。

    termui - 基于termbox-go的终端仪表板,灵感来自blessed-contrib。

    tui-go - 用于构建富终端应用程序的UI库。

    uilive - 用于实时更新终端输出的库。

    uiprogress - 灵活的库,用于在终端应用程序中渲染进度条。

    uitable - 使用表格数据提高终端应用程序可读性的库。

    组态

    用于配置解析的库。

    config - 带有环境变量和标志解析的JSON或YAML配置包装器。

    configure - 通过多个源提供配置,包括JSON,标志和环境变量。

    env - 将环境变量解析为Go结构(默认值)。

    envcfg - 对Go结构进行非编组环境变量。

    envconf - 从环境配置。

    envconfig - 从环境变量中读取配置。

    envh - 帮助管理环境变量。

    gcfg - 将INI样式的配置文件读入Go结构; 支持用户定义的类型和子部分。

    goConfig - 将结构解析为输入,并使用命令行,环境变量和配置文件中的参数填充此结构的字段。

    godotenv - Ruby的dotenv库的端口(从中加载环境变量.env)。

    gofigure - 简化应用程序配置。

    gone / jconf - 模块化JSON配置。保持配置结构及其配置的代码,并将解析委托给子模块,而不会牺牲完整的配置序列化。

    hjson - Human JSON,一种用于人类的配置文件格式。轻松的语法,更少的错误,更多的评论。

    ingo - Flags持久存在于一个类似ini的配置文件中。

    ini - Go包读写INI文件。

    joshbetz / config - Go的小型配置库,用于解析环境变量,JSON文件,并在SIGHUP上自动重新加载。

    mini - 用于解析ini风格配置文件的Golang包。

    store - Go的轻量级配置管理器。

    毒蛇 - 用f牙进行配置。

    xdg - 遵循XDG标准的跨平台包。

    持续集成

    有助于持续集成的工具。

    无人机 - 无人机是一个基于Docker构建的持续集成平台,用Go编写。

    gomason - 从干净的工作区测试,构建,签名和发布您的二进制文件。

    goveralls - 集成Coveralls.io连续代码覆盖跟踪系统。

    工作服 - 多包装去项目coverprofile工具,如goveralls。

    roveralls - 递归覆盖测试工具。

    CSS预处理器

    用于预处理CSS文件的库。

    c6 - 用Go编写的高性能SASS兼容实现编译器。

    gcss - Pure Go CSS预处理器。

    go-libsass - 将包装器转到100%Sass兼容的libsass项目。

    数据结构

    Go中的通用数据结构和算法。

    binpacker - 二进制打包程序和解包程序可帮助用户构建自定义二进制流。

    bit - Golang设置数据结构,具有额外的位扭曲功能。

    bitset - Go包实现bitsets。

    bloom - 在Go中实现的Bloom过滤器。

    bloom - Golang Bloom过滤器实现。

    boomfilters - 用于处理连续,无界流的概率数据结构。

    concurrent-writer - 高度并发的直接替换bufio.Writer。

    conjungo - 一个小巧,强大且灵活的合并库。

    count-min-log - Go实现Count-Min-Log草图:使用近似计数器近似计数(类似于Count-Min草图但使用较少的内存)。

    cuckoofilter - 布谷鸟过滤器:Go中实现的计数布隆过滤器的一个很好的替代品。

    encoding - Go的整数压缩库。

    go-adaptive-radix-tree - 自适应基数树的实现。

    go-datastructures - 有用,高性能和线程安全的数据结构的集合。

    go-ef - Elias-Fano编码的Go实现。

    go-geoindex - 内存中的地理索引。

    go-rquad - 具有有效点位置和邻域发现的区域四叉树。

    众神 - 去数据结构。容器,集合,列表,堆栈,地图,BidiMaps,树,HashSet等。

    Golang-set - Go的线程安全和非线程安全高性能集。

    goset - Go的一个有用的Set集合实现。

    goskiplist - Go中的跳过列表实现。

    gota - 为Go实现数据帧,系列和数据争用方法。

    hilbert - 用于将值映射到空间填充曲线的包,例如Hilbert和Peano曲线。

    hyperloglog - 具有稀疏,LogLog-Beta偏差校正和TailCut空间缩减的HyperLogLog实现。

    levenshtein - Levenshtein距离和相似性度量与可定制的编辑成本和类似Winkler的共同前缀奖金。

    levenshtein - 在Go中计算levenshtein距离的实现。

    mafsa - 使用最小完美散列的MA-FSA实现。

    merkletree - 实现merkle树,提供对数据结构内容的有效和安全的验证。

    咆哮 - Go包实现压缩位集。

    skiplist - Go中的跳过列表实现。

    trie - 在Go中实现Trie。

    ttlcache - 内存LRU字符串接口{}映射,具有golang的到期时间。

    willf / bloom - Go包实现Bloom过滤器。

    数据库

    Go中实现的数据库。

    badger - Go中的快速键值存储。

    BigCache - 用于千兆字节数据的高效键/值缓存。

    bolt - Go的低级键/值数据库。

    buntdb - Go的快速,可嵌入,内存中键/值数据库,具有自定义索引和空间支持。

    cache2go - 内存中密钥:值缓存,支持基于超时的自动失效。

    clusteredBigCache - 具有群集支持和单个项目到期的BigCache。

    cockroach - 可扩展,地理复制,事务数据存储。

    couchcache - 由Couchbase服务器支持的RESTful缓存微服务。

    dgraph - 可扩展,分布式,低延迟,高吞吐量图数据库。

    diskv - 本土磁盘支持的键值存储。

    eliasdb - 具有REST API,短语搜索和类似SQL的查询语言的无依赖关系的事务图数据库。

    forestdb - 转到ForestDB的绑定。

    GCache - 支持可过期缓存,LFU,LRU和ARC的缓存库。

    go-cache - 内存中的密钥:Go的值存储/缓存(类似于Memcached)库,适用于单机应用程序。

    goleveldb - 在Go中实现LevelDB键/值数据库。

    gorocksdb - Gorocksdb是用Go编写的RocksDB的包装器。

    groupcache - Groupcache是一个缓存和缓存填充库,在许多情况下用作memcached的替代品。

    Influxdb - 用于指标,事件和实时分析的可扩展数据存储区。

    jaeger - 分布式跟踪系统。

    ledisdb - Ledisdb是一款基于LevelDB的高性能NoSQL,如Redis。

    levigo - Levigo是LevelDB的Go包装器。

    moss - Moss是一个简单的LSM键值存储引擎,用100%Go编写。

    piladb - 基于堆栈数据结构的轻量级RESTful数据库引擎。

    prometheus - 监控系统和时间序列数据库。

    rqlite - 基于SQLite构建的轻量级分布式关系数据库。

    Scribble - 微小的平面文件JSON商店。

    tempdb - 临时项的键值存储。

    tidb - TiDB是一个分布式SQL数据库。灵感来自Google F1的设计。

    tiedot - 由Golang提供支持的NoSQL数据库。

    数据库架构迁移。

    darwin - Go的数据库模式演化库。

    go-fixtures - 用于Golang优秀的内置数据库/ sql库的Django风格的灯具。

    gondolier - Gondolier是一个使用结构自动迁移数据库模式的库。

    goose - 数据库迁移工具。您可以通过创建增量SQL或Go脚本来管理数据库的演变。

    gormigrate - Gorm ORM的数据库模式迁移帮助程序。

    迁移 - 数据库迁移。CLI和Golang库。

    pravasan - 简单迁移工具 - 目前用于MySQL但计划很快支持Postgres,SQLite,MongoDB等。

    苏打 - 用于MySQL,PostgreSQL和SQLite的数据库迁移,创建,ORM等。

    sql-migrate - 数据库迁移工具。允许使用go-bindata将迁移嵌入到应用程序中。

    数据库工具。

    chproxy - ClickHouse数据库的HTTP代理。

    go-mysql - 使用工具集来处理MySQL协议和复制。

    go-mysql-elasticsearch - 自动将MySQL数据同步到Elasticsearch。

    kingshard - kingshard是由Golang提供支持的MySQL的高性能代理。

    myreplication - MySql二进制日志复制监听器。支持基于语句和行的复制。

    orchestrator - MySQL复制拓扑管理器和可视化工具。

    pgweb - 基于Web的PostgreSQL数据库浏览器。

    prep - 使用准备好的SQL语句而不更改代码。

    perst - 从任何PostgreSQL数据库提供RESTful API。

    rwdb - rwdb为多个数据库服务器设置提供只读副本功能。

    vitess - vitess提供服务器和工具,便于扩展MySQL数据库以用于大规模Web服务。

    SQL查询构建器,用于构建和使用SQL的库。

    dat - Go Postgres数据访问工具包。

    Dotsql - Go库,可以帮助您将sql文件保存在一个位置并轻松使用它们。

    gendry - 非侵入式SQL构建器和强大的数据绑定器。

    goqu - 惯用 SQL构建器和查询库。

    igor - PostgreSQL的抽象层,支持高级功能并使用类似gorm的语法。

    ozzo-dbx - 强大的数据检索方法以及与数据库无关的查询构建功能。

    scaneo - 生成Go代码以将数据库行转换为任意结构。

    sqrl - SQL查询构建器,具有改进性能的Squirrel分支。

    Squirrel - Go库,可帮助您构建SQL查询。

    xo - 基于现有模式定义或支持PostgreSQL,MySQL,SQLite,Oracle和Microsoft SQL Server的自定义查询,为数据库生成惯用Go代码。

    数据库驱动

    用于连接和操作数据库的库。

    关系数据库

    avatica - 用于数据库/ sql的Apache Phoenix / Avatica SQL驱动程序。

    bgc - 用于BigQuery的数据存储连接。

    firebirdsql - Go的Firebird RDBMS SQL驱动程序。

    go-adodb - 用于go的Microsoft ActiveX Object DataBase驱动程序,它使用database / sql。

    go-bqstreamer - BigQuery快速和并发流插入。

    go-mssqldb - Go的Microsoft MSSQL驱动程序。

    go-oci8 - 使用database / sql的Oracle驱动程序。

    go-sql-driver / mysql - Go的MySQL驱动程序。

    go-sqlite3 - 用于使用database / sql的SQLite3驱动程序。

    gofreetds - Microsoft MSSQL驱动程序。转到FreeTDS的包装器。

    pgx - PostgreSQL驱动程序支持数据库/ sql之外的功能。

    pq - 用于数据库/ sql的Pure Go Postgres驱动程序。

    NoSQL数据库

    aerospike-client-go - Go语言的Aerospike客户端。

    arangolite - ArangoDB的轻量级golang驱动程序。

    asc - 用于Aerospike的数据存储连接。

    cayley - 支持多个后端的图形数据库。

    dsc - SQL,NoSQL,结构化文件的数据存储连接。

    dynago - Dynago是DynamoDB最少的意外客户端原则。

    go-couchbase - Go中的Couchbase客户端。

    go-couchdb - Go的另一个CouchDB HTTP API包装器。

    gocb - 官方Couchbase Go SDK。

    gocql - 用于Apache Cassandra的语言驱动程序。

    gomemcache - Go编程语言的memcache客户端库。

    gorethink - 转RethinkDB的语言驱动程序。

    goriak - Riak KV的语言驱动程序。

    mgo - 用于Go语言的MongoDB驱动程序,它根据标准Go成语在非常简单的API下实现丰富且经过良好测试的功能选择

    neo4j - Golang的 Neo4j Rest API绑定。

    Neo4j-GO - golang中的Neo4j REST客户端。

    新手 - Golang的 Neo4j客户端。

    redigo - Redigo是Redis数据库的Go客户端。

    redis - Golang的Redis客户端。

    redis - Go的简单,强大的Redis客户端。

    redis - 兼容Redis协议的TCP服务器/服务。

    xredis - Typesafe,可自定义,干净且易于使用的Redis客户端。

    搜索和分析数据库。

    bleve - 用于go的现代文本索引库。

    elastic - Go的Elasticsearch客户端。

    elasticsql - 在Go中将sql转换为elasticsearch dsl。

    elastigo - Elasticsearch客户端库。

    去 - 图书馆与Elasticsearch互动。

    riot - Go开源,分布式,简单高效的搜索引擎

    skizze - 概率数据结构服务和存储。

    日期和时间

    处理日期和时间的图书馆。

    carbon - 使用许多util方法的简单时间扩展,从PHP Carbon库移植。

    date - Augments处理日期,日期范围,时间跨度,期间和时间的时间。

    dateparse - 预先解析日期而不知道格式。

    durafmt - Go的持续时间格式库。

    feiertage - 计算德国公众假期的功能集,包括 德国各州的专业化(Bundesländer)。像复活节,五旬节,感恩节......

    go-persian-calendar - 在Go(golang)中实现波斯语(Solar Hijri)日历。

    go-sunrise - 计算给定位置的日出和日落时间。

    goweek - 在golang中使用周实体的库。

    now - 现在是golang的时间工具包。

    NullTime - Nullable time.Time。

    strftime - 与C99兼容的strftime格式化程序。

    timespan - 用于与时间间隔交互,定义为开始时间和持续时间。

    timeutil - golang的时间包中有用的扩展(Timedelta,Strftime,...)。

    星期二 - 与Ruby兼容的Strftime功能。

    分布式系统

    有助于构建分布式系统的软件包。

    celeriac - 用于添加对交互和监控的支持的库.Go中的 Celery工作者,任务和事件。

    digota - grpc电子商务微服务。

    drmaa - 基于DRMAA标准的集群调度程序的作业提交库。

    emitter-io - 使用MQTT,Websockets和爱构建的高性能,分布式,安全和低延迟的发布 - 订阅平台。

    flowgraph - MPI样式的就绪发送协调层。

    gleam - 用纯Go和Luajit编写的快速且可扩展的分布式map / reduce系统,将Go的高并发性与Luajit的高性能相结合,可以独立运行或分布式运行。

    glow - 易于使用的可扩展分布式大数据处理,Map-Reduce,DAG执行,全部采用纯Go。

    go-health - 用于在服务中启用异步依赖项运行状况检查的库。

    go-jump - Google的“Jump”Consistent Hash函数的端口。

    go-kit - 支持服务发现,负载平衡,可插拔传输,请求跟踪等的微服务工具包。

    gorpc - 用于高负载的简单,快速和可扩展的RPC库。

    grpc-go - gRPC的Go语言实现。基于HTTP / 2的RPC。

    hprose - 非常新的RPC库,现在支持25种以上的语言。

    jsonrpc - jsonrpc包有助于实现JSON-RPC 2.0。

    jsonrpc - JSON-RPC 2.0 HTTP客户端实现。

    KrakenD - 具有中间件的超高性能API网关框架。

    micro - Pluggable微服务工具包和分布式系统平台。

    NATS - 用于微服务,物联网和云原生系统的轻量级高性能消息传递系统。

    筏 - Golang实施的Raft共识协议,由HashiCorp提供。

    筏 - 由CoreOS实施Raft共识协议。

    ringpop-go - Go应用程序的可扩展,容错的应用程序层分片。

    rpcx - 像阿里巴巴Dubbo这样的分布式可插拔RPC服务框架。

    sleuth - 用于无主p2p自动发现和HTTP服务之间的RPC的库(使用ZeroMQ)。

    tendermint - 使用Tendermint共识和区块链协议将用任何编程语言编写的状态机转换为拜占庭容错复制状态机的高性能中间件。

    torrent - BitTorrent客户端包。

    dht - BitTorrent Kademlia DHT实施。

    go-peerflix - 视频流洪流客户端。

    电子邮件

    实现电子邮件创建和发送的库。

    柔雅系列 - CSS内衬为您的HTML电子邮件。

    电子邮件 - 一个强大而灵活的Go电子邮件库。

    go-dkim - DKIM库,用于签署和验证电子邮件。

    go-imap - 客户端和服务器的IMAP库。

    go-message - 用于Internet邮件格式和邮件消息的流式库。

    Gomail - Gomail是一个非常简单而强大的发送电子邮件的包。

    Hectane - 提供HTTP API的轻量级SMTP客户端。

    hermes - Golang软件包,可生成干净,响应迅速的HTML电子邮件。

    MailHog - 使用Web和API接口进行电子邮件和SMTP测试。

    SendGrid - SendGrid的Go库,用于发送电子邮件。

    smtp - SMTP服务器协议状态机。

    可嵌入的脚本语言

    在go代码中嵌入其他语言。

    agora - Go中的动态类型,可嵌入编程语言。

    anko - 用Go编写的可编写脚本的解释器。

    binder - 根据gopher-lua转到Lua绑定库。

    gisp - Go中的简单LISP。

    go-duktape - 针对Go的Duktape JavaScript引擎绑定。

    go-lua - Lua 5.2 VM的端口到纯Go。

    go-php - Go的PHP绑定。

    go-python - naive go绑定到CPython C-API。

    golua - Goa绑定Lua C API。

    gopher-lua - 用Go编写的Lua 5.1 VM和编译器。

    ngaro - 可嵌入的Ngaro VM实现,可在Retro中实现脚本编写。

    otto - 用Go编写的JavaScript解释器。

    purl - 嵌入Go的Perl 5.18.2。

    用于处理文件和文件系统的库。

    afero - Go的FileSystem抽象系统。

    go-csv-tag - 使用标记加载csv文件。

    go-gtfs - 在go中加载gtfs文件。

    notify - 具有简单API的文件系统事件通知库,类似于os / signal。

    skywalker - 允许一个人同时轻松浏览文件系统的软件包。

    tarfs - tar文件FileSystem接口的实现。

    金融

    会计和财务包。

    会计 - golang的货币和货币格式。

    十进制 - 任意精度的定点十进制数。

    go-finance - Go的综合金融市场数据。

    go-finance - 货币时间价值(年金),现金流量,利率转换,债券和折旧计算的金融函数库。

    go-money - Fowler的Money模式的实现。

    ofxgo - 查询OFX服务器和/或解析响应(使用示例命令行客户端)。

    transaction - 以多线程模式运行的嵌入式帐户事务数据库。

    增值税 - 增值税号验证和欧盟增值税税率。

    形式

    用于处理表单的库。

    bind - 将表单数据绑定到任何Go值。

    绑定 - 将表单和JSON数据从net / http请求绑定到struct。

    符合 - 保持用户输入。基于struct标签修剪,清理和清理数据。

    form - 将url.Values解码为Go值,将Encodes Go值转换为url.Values。双阵列和完整地图支持。

    formam - 将表单的值解码为结构。

    forms - 与框架无关的库,用于解析和验证支持多部分表单和文件的表单/ JSON数据。

    gorilla / csrf - 针对Go Web应用程序和服务的CSRF保护。

    nosurf - Go的CSRF保护中间件。

    游戏开发

    令人敬畏的游戏开发库。

    Azul3D - 用Go编写的3D游戏引擎。

    Ebiten - Go中死的简单2D游戏库。

    engo - Engo是一个用Go编写的开源2D游戏引擎。它遵循实体 - 组件 - 系统范例。

    GarageEngine - 使用Go编写的2d游戏引擎在OpenGL上工作。

    glop - Glop(Power Library Of Power)是一个相当简单的跨平台游戏库。

    go-astar - 去实现A *路径寻找算法。

    go-collada - Go包,用于处理Collada文件格式。

    go-sdl2 - Go SimpleMedia Layer的绑定。

    go3d - Go的面向性能的2D / 3D数学包。

    gonet - 用golang实现的游戏服务器骨架。

    goworld - 可扩展的游戏服务器引擎,具有空间实体框架和热交换功能

    Leaf - 轻量级游戏服务器框架。

    nano - 轻量级,设施齐全,高性能的golang游戏服务器框架

    Oak - Pure Go游戏引擎。

    Pixel - Go手工制作的2D游戏库。

    raylib-去 -去绑定raylib,简单和易于使用的库,以了解电子游戏编程。

    termloop - Go的基于终端的游戏引擎,建立在Termbox之上。

    生成和泛型

    通过代码生成增强语言功能的工具,如泛型。

    efaceconv - 用于从接口{}到不可分配的不可变类型的高性能转换的代码生成工具。

    gen - 用于“泛型”功能的代码生成工具。

    go-enum - 来自代码注释的枚举代码生成。

    go-linq - 用于Go的.NET LINQ类查询方法。

    goderive - 从输入类型派生函数。

    interfaces - 用于生成接口定义的命令行工具。

    jennifer - 生成没有模板的任意Go代码。

    pkgreflect - 用于包范围反射的预处理器。

    展开全文
  • 国内优秀MES开源框架

    千次阅读 多人点赞 2020-04-17 10:42:10
    一套springboot 开源框架 代码标准规范化。 界面展示 演示地址 http://wangziyangmes.pzzd.xyz 用户名admin 密码123 系统管理 工艺管理 计划管理 物料管理 *用户管理* *工艺路线管理* 工单下达....

    MES 黑科 springboot 开源框架

    因为个人热爱MES行业,于是根据个人经验,开发了此系统。主要以学习交流,其他勿扰。

    开源地址

    项目演示地址 https://www.meswozuiniu.icu
    https://gitee.com/wangziyangyang/MES-Springboot

    请勿相信其他转载文章,都是营销号

    功能能模块

    系统管理 工艺管理 计划管理 物料管理
    *用户管理* *工艺路线管理* 工单下达 物料出入库
    *组织管理* MOM管理 工序工单分解 智能货架
    *菜单管理* BOM管理 工单流程变更 物料标签管理
    *基础数据维护* SOP管理 工单锁定 AGV+WCS *基础数据配置* 其他工艺文件 工单特殊设置 *物料基础数据*
    设备管理 SN码管理 在制品管理 质量管理
    设备档案 SN码规则管理 工序过站 IOC
    设备维修保养 分配SN管理 在线维修管理 OQC 设备出入库 SN标签+打印 自动化对接 FQC 设备稼动率 SN返工管理 质检项维护 说明: *完成 未开发

    ISA-95 标准

    四大类: 资源、能力、产品定义和生产计划

    九大模型

    • 人力资源模型
    • 设备资源模型
    • 材料资源模型
    • 过程段模型(过程端模型,过程能力模型)
    • 生产能力模型
    • 产品定义模型
    • 生产计划模型
    • 生产性能模型

    技术架构

    springBoot+mybatis-plus+redis+shiro+hutool+layui+swagger+freemarker+mysql8+echarts

    jenkins+docker+nginx

    功能介绍:

    1. 用户管理:用户是系统操作者,该功能主要完成系统用户配置。
    2. 主数据管理:动态配置表以及所需要显示的字段,只需要简单维护既可以完成增删改成操作。
    3. 赋码管理:动态配置码规则项。例如6位年月日 3位,流水号,随机号。根据用户配置自动创建SN。
    4. 菜单管理:配置系统菜单,操作权限,按钮权限标识等。
    5. 角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。
    6. 字典管理:对系统中经常使用的一些较为固定的数据进行维护,如:是否、男女、类别、级别等。
    7. 物料进出管理:包含物料叫料,配料,发料,确认收料,上料
    8. 工单管理:工单下达,工单分解,工单状态调整,工单特殊设置
    9. 在制品管理:过站工序记录,数据绑定成箱成剁
    10. 质量管理: 质检项维护,根据物料或者型号管理质检项目。检验页面,抽检确认
    11. 工艺文件管理 :工艺参数,BOM文件,导入导出
    12. 报表:图形化展示
    13. 设备管理: 设备信息录入,使用记录,设备台账,设备维保
    14. 操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。
    15. 连接池监视:监视当期系统数据库连接池状态,可进行分析SQL找出系统性能瓶颈。
    16. 工作流引擎:实现业务工单流转、在线流程设计器。
    17. 数字化平台:支撑数据展示,定时动态刷新数据。热部署(SQL视图)
      数字仿真
    展开全文
  • javaweb健身房管理系统、ssm框架+mysql

    千次阅读 2019-11-20 11:44:14
    编写并实现一个基于Java Web的健身房管理系统, 采用SSM(Spring, SpringMVC, Mybatis)三大框架实现, 能够实现教练管理, 会员管理, 器材管理的功能 运行环境 jdk+tomcat8+mysql5.6+Eclispse 项目技术 spring, ...

    编写并实现一个基于Java Web的健身房管理系统, 采用SSM(Spring, SpringMVC, Mybatis)三大框架实现, 能够实现教练管理, 会员管理, 器材管理的功能

    运行环境

    jdk+tomcat8+mysql5.6+Eclispse

    项目技术

    spring, springmvc, mybatis, jsp, jquery, mysql, maven

    注意事项

    • 运行时需要预先创建数据库, 字符集为utf8mb4, 并导入源码里的sql文件
    • 更改源码包里的jdbcConfig.properties的数据库配置
    • 管理员测试账号: admin admin
    • 会员测试账号: 123 123

    介绍

    技术原理

    这个项目采用最原生的项目构建方式, 所有依赖jar包都在lib文件夹下, Eclipse导入即可运行, 比较适合Java Web开发的初学者, 代码整体结构比较清晰, 整体采用MVC架构的方式进行编写

    • Model层: 即dao包下的代码, 注意由于是采用了mybatis来进行数据库的操作, 故改层代码只是接口, 通过mybatis机制与classpath下的userMapper.xml联系起来
    • Controller层: 即controller包下的代码, 采用springmvc的方式进行实现, 设计了所需要的所有请求接口, 并对请求接口进行预处理, 用于调用service层的服务
    • View层: controller层渲染数据到view层, view层采用最基础的jsp进行实现, 没有使用其他的模板引擎

     

    健身房管理系统-javaweb-毕业设计

    健身房管理系统-javaweb-毕业设计

    展开全文
  • jeesite框架搭建maven项目 (mysql数据库)

    千次阅读 2017-01-16 13:24:18
    官网文档地址: ... 平台简介JeeSite是基于多个优秀的开源项目,高度整合封装而成的高效,高性能,强安全性的开源Java EE快速开发平台。JeeSite本身是以Spring ...
  • 一款优秀的持久层框架Mybatis

    千次阅读 2020-04-15 14:36:46
    1.是一款优秀的持久层框架 2.支持定制化sql,灵活 3.半自动化持久化层框架,需要程序员写sql 二、Mybatis的优点 1.基于sql,简单易学 2.便于了解底层组装过程 3.sql写在配置文件中,方便管理 4.程序调试方便 三、...
  • GIT上优秀的IOS框架

    千次阅读 2015-09-11 08:31:10
    Facebook 的一个曾经用得广泛的庞大的iOS开发框架 陈旧并且已不再维护       nimbus three20替代品 又一个庞大的框架       BeeFramework 一个基于MVC的框架, 比较...
  • THINKPHP框架优秀开源系统推荐

    千次阅读 2018-05-24 11:09:00
    THINKPHP框架优秀开源系统推荐  众所周知,国内众多优秀的开源框架,ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多的原创功能和特性,在社区...
  • GitHub 优秀的 Android 开源项目和框架

    千次阅读 2017-03-17 18:05:50
    GitHub 优秀的 Android 开源项目 淘宝技术牛p博客整理开发中最常用的GitHub上 优秀的 Android 开源项目整理(精品) 博客分类:  Android 开源集合   本文章已收录于: Git 原文地址为...
  • 笔者作为一位tool mad,将工作以来用到的各种优秀资料、神器及框架整理在此,毕竟好记性不如烂键盘,此项目可以作为自己的不时之需。本人喜欢折腾,记录的东西也比较杂,各方面都会有一些,内容按重要等级排序,大家...
  • 简述 简单的定时任务通过QuartZ...很多朋友都了解过xxl-job,这是一款非常优秀的分布式定时任务调度框架。今天给大家带来的是另一款开源的分布式调度与计算框架。是的不仅仅是任务调度还包含计算。 项目地址 ...
  • 优秀的C/C++框架和库整理,值得收藏

    千次阅读 2018-03-06 10:50:07
    关于 C++ 框架、库和资源的一些汇总列表,内容包括:标准库、Web应用框架、 人工智能 、数据库、图片处理、 机器学习 、日志、代码分析等。   标准库 C++标准库,包括了STL容器, 算法 和函数等。 C++ Standard ...
  • bettercap--优秀的MITM攻击测试框架

    千次阅读 2016-03-15 21:18:29
    0x00:简介bettercap是一个强大的,模块化的,方便并且容易扩展的中间人攻击框架。一些主要的功能如下:.支持全双工和半双工ARP欺骗。 .第一次真正实现ICMP 双向欺骗。 .可配置的DNS欺骗。 .完全自动化,可实时发现主机。...
  • MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装。MyBatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java...
  • 工作以来一直使用ExtJs作为前端框架,很想发些东西给大家分享一下,怎奈没好的东西怎能拿出来故弄玄虚,偶得一用ExtJs写的权限管理框架,看着代码书写非常规范,不由得心生敬佩,何不改来用用。 拿出一段感谢原作者...
  • jQuery 是继 prototype 之后又一个优秀的 Javascript 框架。其宗旨是—写更少的代码,做更多的事情。它是轻量级的 js 库(压缩后只有21k) ,这是其它的 js 库所不及的,它兼容 CSS3,还兼容各种浏览器(IE 6.0+, FF ...
  • 框架千变万化,而这些通用的底层知识,却是几乎不变的,了解了这些知识,可以帮助我们更快着学习一门知识,更加懂得计算机的运行机制。当然,在面试中也经常会被问到,特别是对于应届生,对于春秋招,也可以看看我前...
  • 框架】如何画出优秀的架构图

    千次阅读 2020-05-25 18:05:48
    其用途有: 描述了系统由哪些组件/服务组成 厘清了组件之间的关系和依赖 为软件开发如何分解交付提供了框架 4. 类图(Code/Class Diagram) 这个图很显然是给技术人员看的,比较常见,就不详细介绍了。 案例分享 下面...
  • Mysql介绍

    千次阅读 2021-04-28 16:25:37
    PHP 在开发 Web 站点或一些管理系统时,需要对大量的数据进行保存,虽然 XML 文件或者文本文件也可以作为数据的载体,但不易进行管理和对大量数据的...该数据库系统是由瑞典的 MySQL AB 公司开发、发布并支持,由 MySQL
  • Mysql主从配置

    千次阅读 2018-08-08 19:18:33
    Mysql主从配置 大型网站为了软解大量的并发访问,除了在网站实现...这时候,我们会考虑如何减少数据库的联接,一方面采用优秀的代码框架,进行代码的优化,采用优秀的数据缓存技术如:memcached,如果资金丰厚的话...
  • 超级全面的MySQL优化面试解析

    千次阅读 多人点赞 2019-09-02 10:13:40
    存储引擎Storage engine:MySQL中的数据、索引以及其他对象是如何存储的,是一套文件系统的实现。 功能差异 show engines Engine Support Comment InnoDB DEFAULT Supports ...
  • Spring5以后,新增了Webflux,异步非阻塞Web框架。 在SpringBoot第三篇的时候,简单介绍过WebFlux。 本篇,将从更细的粒度上,更全面的介绍下WebFlux。 一、什么是WebFlux WebFlux是脱离了传统阻塞式Servlet...
  • MySQL集群架构

    千次阅读 2020-07-13 17:50:24
    本篇文章是 MySQL 学习课程中的一部分笔记。 MySQL集群架构 一、集群架构设计 1、架构设计理念 在集群架构设计时,主要遵从下面三个维度: 可用性 扩展性 一致性 2、可用性设计 站点高可用,冗余站点 服务高可用...
  • 常用的CSS框架

    千次阅读 2018-03-04 10:33:22
    常用的CSS框架 之前在写自己的个人网站的时候,由于自己Web前端不是特别好,于是就去找相关的CSS框架来搭建页面了。 找到以下这么一篇文章(列出了很多常用的CSS框架): ... Bootstrap ...Mate...
  • Go实战–也许最快的Go语言Web框架kataras/iris初识四(i18n、filelogger、recaptcha)Go实战–也许最快的Go语言Web框架kataras/iris初识三(Redis、leveldb、BoltDB)Go实战–也许最快的Go语言Web框架kataras/iris初识二
  • MySQL系列教程(五)

    千次阅读 2016-10-25 12:44:58
    MyCATMyCat是基于阿里开源的Cobar产品而研发,Cobar的稳定性、可靠性、优秀的架构和性能以及众多成熟的使用案例使得MYCAT一开始就拥有一个很好的起点,站在巨人的肩膀上,我们能看到更远。业界优秀的开源项目和创新...
  • SSH框架

    千次阅读 2019-02-25 19:29:49
    SSH 为 struts+spring+hibernate 的一个集成框架,是目前较流行的一种JAVA Web应用程序开源框架。 Struts Struts是一个基于Sun J2EE平台的MVC框架,主要是采用Servlet和JSP技术来实现的。由于Struts能充分满足应用...
  • MySQL系列教程(二)

    千次阅读 多人点赞 2016-09-20 12:12:38
    mySQL执行计划语法 explain 例如: explain select * from t3 where id=3952602;explain输出解释 +----+-------------+-------+-------+-------------------+---------+---------+-------+------+-------+| id | ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 44,691
精华内容 17,876
关键字:

优秀mysql框架

mysql 订阅