scgo

command module
v0.0.0-...-1a281b6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 19, 2017 License: Apache-2.0 Imports: 2 Imported by: 0

README

scgo golang 框架

获取方式:
github.com
go get -u github.com/zsxm/scgo
clone
git clone https://github.com/zsxm/scgo.git

#使用方法和说明:
为了方便使用,执行速度,和开发效率,所有反射的功能都由生成的代码替代
代码生成:github.com/zsxm/scgo/tools/scgen/scgen.exe 代码生成工具包
生成工具使用方式:
实际项目目录结构,逗号后边的是目录说明

--projectDir
--------conf ,配置文件,配置db.xml,logger.xml这些文件名是固定的.文件内容示例去框架使用示例中找
--------logs ,生成的日志
--------init ,初始化action,执行action.go的init方法
--------static ,静态文件存放
--------template ,html模版存放
--------upload ,上传文件存放,可配置
--------main.go ,程序启动
--------source ,go源代码目录
----------------module1 ,模块1
-----------------------entity ,结构实体
------------------------------entity.go ,go文件
-----------------------action
-----------------------log
-----------------------service
----------------module2 ,模块2
-----------------------entity
-----------------------action
-----------------------log
-----------------------service
#框架使用示例在最下边
以下目录说明
projectDir:项目,source:go源码,module1:模块,entity:结构实体,结构实体目录需要按照一定格式编写
entity.go示例代码
import ( "github.com/zsxm/scgo/data" )

//go:generate $GOPATH/src/github.com/zsxm/scgo/tools/scgen/scgen.exe -fileDir=$GOFILE -projectDir=study/app3 -moduleName=chatol -goSource=source
//go:@Table value=users
type Message struct {

//go:@Column value=u_id
//go:@Identif
id data.String

//go:@Column value=u_name
name data.String

//go:@Column value=u_phone
phone data.String

//go:@Column value=u_age
age data.Integer

tt data.Integer

}
注解说明:
因为go不支持注解,所以都是以注释形式存在的自定义注解
固定格式//go:开头
//go:@Table、//go:@Column、//go:@Identif,分别是结构Message对应的表名,字段对应的列名,和主键字段,目前只支持这些。
未添加注解的字段是不会映射到数据表中,但是会自动封装数据进去,除了数据表映射功能。
注意:需要配置环境变量GOPATH
-projectDir-moduleName是需要配置的项目目录和模块名称,其它两个不变
还需要一个.bat或.sh执行文件放到entity.go同一目录下
执行文件代码
@echo off
echo [INFO] run go generate.
cd %~dp0
call go generate
exit
执行该命令后,将会自动生成,action,log,service,和entity_impl.go等封装好的代码。
自动生成的代码后缀带_impl的文件内容是一搬不需要改动的,如果改动了,再去执行该命令将会覆盖掉自己写的代码,所以在其它文件中实现。

chttp:
*action映射
*请求数据绑定和响应数据封装
*上传文件的封装等web核心组件

chttplib:
*http模拟请求发送
*文件上传发送等

data:
*数据库、缓存操作封装
*对结构的数据转换,数据库操作核心功能

filter:
*过滤器

logger:
*日志输出

security:还未实现
*安全

wsdl:
*webservice wsdl

websocket:
*html5 websocket

tools:
*框架所有工具包
*代码生成包
*集成修改其它源码

session:
*session会话

funcmap
*模版使用函数

cjson:
*json和map互转

cxml:
*xml解析

框架使用 微信平台配置:https://github.com/zsxm/weixin

建目录 $GOPATH/src/golang.org/x/ git clone https://github.com/golang/net.git angularjs,less,sass

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
模版
模版
数据操作
数据操作
过滤器
过滤器
日志
日志
安全包
安全包
工具
工具
cron
Package cron implements a cron spec parser and job runner.
Package cron implements a cron spec parser and job runner.
gen
rsa
Package websocket implements a client and server for the WebSocket protocol as specified in RFC 6455.
Package websocket implements a client and server for the WebSocket protocol as specified in RFC 6455.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL