提交 79cba47c 编写于 作者: 偏锋书生's avatar 偏锋书生

cassandra map

上级 fe2c6826
/target/
/.settings/
/.classpath
/.project
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>net.wicp.tams</groupId>
<artifactId>duckula3-dev-demo</artifactId>
<version>0.0.1</version>
</parent>
<artifactId>duckula3-dev-demo-cassandra</artifactId>
<properties>
<!-- 与cassandra 3.7.2版本相配 -->
<metrics.version>3.2.2</metrics.version>
</properties>
<dependencies>
<dependency>
<groupId>net.wicp.tams</groupId>
<artifactId>common-cassandra</artifactId>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-common</artifactId>
<version>4.0.56.Final</version>
</dependency>
<!-- log4j2 -->
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
</dependency>
<dependency>
<groupId>com.lmax</groupId>
<artifactId>disruptor</artifactId>
</dependency>
</dependencies>
</project>
\ No newline at end of file
package net.wicp.tams.duckula.demo.cassandra;
import java.util.List;
import java.util.Properties;
import com.datastax.driver.core.ResultSet;
import com.datastax.driver.mapping.Result;
import net.wicp.tams.common.Conf;
import net.wicp.tams.common.cassandra.CassandrType;
import net.wicp.tams.common.cassandra.CassandraAssit;
import net.wicp.tams.common.cassandra.bean.Columns;
import net.wicp.tams.common.cassandra.jdbc.CassandraData;
import net.wicp.tams.common.cassandra.jdbc.CassandraDatas;
import net.wicp.tams.common.cassandra.jdbc.OptType;
import net.wicp.tams.duckula.demo.cassandra.bean.OdsResumes;
import net.wicp.tams.common.cassandra.jdbc.CassandraDatas.Builder;
public class CassandraDemo {
public static void main(String[] args) {
Properties props=new Properties();
props.put("common.cassandra.pool.default.contactpoint", "192.168.1.222");
props.put("common.cassandra.pool.default.username", "root");
props.put("common.cassandra.pool.default.password", "123456");
Conf.overProp(props);
//testinsert();
List<OdsResumes> mappers = testMapper();
System.out.println(mappers);
}
private static List<OdsResumes> testMapper() {
ResultSet rs = CassandraAssit.getSession().execute("select * from gvp.ods_resumes;");
Result<OdsResumes> map = CassandraAssit.getMappingManager().mapper(OdsResumes.class).map(rs);
return map.all();
}
private static void testinsert() {
Builder builder = CassandraDatas.newBuilder();
builder.setKs("gvp");
builder.setTb("ods_resumes");
builder.setKey("id");
builder.putType("id", CassandrType.uuid.name());
CassandraData.Builder data = CassandraData.newBuilder();
data.setOptType(OptType.insert);
data.putValue("id", "756716f7-2e54-4715-9f00-91dcbea6cf59");
data.putValue("name", "周俊辉");
data.putValue("phone", "18964961172");
data.putValue("sex", "男");
builder.addDatas(data);
CassandraAssit.optDatas(builder.build());
}
}
package net.wicp.tams.duckula.demo.cassandra.bean;
import java.util.List;
import java.util.UUID;
import com.datastax.driver.mapping.annotations.Column;
import com.datastax.driver.mapping.annotations.Frozen;
import com.datastax.driver.mapping.annotations.Table;
import lombok.Data;
@Table(keyspace = "gvp", name = "ods_resumes")
@Data
public class OdsResumes {
// column_name,kind,type,clustering_order
@Column(name = "id")
private UUID id;
@Column(name = "name")
private String name;
@Column(name = "phone")
private String phone;
@Frozen
@Column(name = "trains")
private List<Train> trains;
}
package net.wicp.tams.duckula.demo.cassandra.bean;
import java.sql.Date;
import com.datastax.driver.mapping.annotations.Field;
import com.datastax.driver.mapping.annotations.UDT;
import lombok.Data;
@UDT(keyspace = "gvp", name = "train")
class Train {
@Field(name = "name")
private String name;
//@Field(name = "date")
//private Long date;
@Field(name = "grade")
private String grade;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getGrade() {
return grade;
}
public void setGrade(String grade) {
this.grade = grade;
}
}
\ No newline at end of file
#\u9ED8\u8BA4256 * 1024
AsyncLogger.RingBufferSize=64 * 1024
AsyncLogger.WaitStrategy=BLOCK
#AsyncLogger.ExceptionHandler=net.wicp.tams.duckula.task.disruptor.LogExceptionHandler
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<configuration status="error" shutdownHook="disable">
<appenders>
<Console name="Console" target="SYSTEM_OUT">
<ThresholdFilter level="trace" onMatch="ACCEPT"
onMismatch="DENY" />
<PatternLayout pattern="%d %p %c{1.} [%t] %m%n" />
</Console>
<RollingFile name="sender" fileName="${sys:logRoot}/sender.log"
filePattern="${sys:logRoot}/sender-%d{yyyyMMdd}-%i.log">
<PatternLayout pattern="%d %p %c{1.} [%t] %m%n" />
<Policies>
<OnStartupTriggeringPolicy />
<SizeBasedTriggeringPolicy size="30 MB" />
<TimeBasedTriggeringPolicy />
</Policies>
</RollingFile>
<RollingFile name="error" fileName="${sys:logRoot}/error.log"
filePattern="${sys:logRoot}/error-%d{yyyyMMdd}-%i.log">
<PatternLayout pattern="%d %p %c{1.} [%t] %m%n" />
<Policies>
<OnStartupTriggeringPolicy />
<SizeBasedTriggeringPolicy size="30 MB" />
<TimeBasedTriggeringPolicy />
</Policies>
</RollingFile>
<RollingFile name="other" fileName="${sys:logRoot}/other.log"
filePattern="${sys:logRoot}/other-%d{yyyyMMdd}-%i.log">
<PatternLayout pattern="%d %p %c{1.} [%t] %m%n" />
<Policies>
<OnStartupTriggeringPolicy />
<SizeBasedTriggeringPolicy size="30 MB" />
<TimeBasedTriggeringPolicy interval="3" modulate="true"/>
<!--
<CronTriggeringPolicy schedule="0/5 * * * * ?"/>
-->
</Policies>
<DefaultRolloverStrategy>
<Delete basePath="${sys:logRoot}" maxDepth="1">
<IfFileName glob="other-*.log" />
<IfLastModified age="3d" />
</Delete>
</DefaultRolloverStrategy>
</RollingFile>
</appenders>
<loggers>
<Logger name="errorBinlog" level="error" additivity="false">
<AppenderRef ref="error" />
</Logger>
<root level="info">
<appender-ref ref="other" />
<appender-ref ref="Console" />
</root>
</loggers>
</configuration>
......@@ -13,5 +13,6 @@
<modules>
<module>duckula3-dev-demo-cuslistener</module>
<module>demo-dev-kafka</module>
<module>duckula3-dev-demo-cassandra</module>
</modules>
</project>
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册